@wordpress/edit-site 5.33.0 → 5.35.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 +11 -3
- package/build/components/add-new-page/index.js +3 -0
- package/build/components/add-new-page/index.js.map +1 -1
- package/build/components/add-new-pattern/index.js +8 -7
- package/build/components/add-new-pattern/index.js.map +1 -1
- package/build/components/add-new-template/add-custom-generic-template-modal-content.js +3 -0
- package/build/components/add-new-template/add-custom-generic-template-modal-content.js.map +1 -1
- package/build/components/add-new-template/add-custom-template-modal-content.js +3 -1
- package/build/components/add-new-template/add-custom-template-modal-content.js.map +1 -1
- package/build/components/add-new-template/index.js +2 -2
- package/build/components/add-new-template/index.js.map +1 -1
- package/build/components/app/index.js +4 -2
- package/build/components/app/index.js.map +1 -1
- package/build/components/block-editor/editor-canvas.js +4 -18
- package/build/components/block-editor/editor-canvas.js.map +1 -1
- package/build/components/block-editor/resize-handle.js +20 -5
- package/build/components/block-editor/resize-handle.js.map +1 -1
- package/build/components/block-editor/site-editor-canvas.js +2 -2
- package/build/components/block-editor/site-editor-canvas.js.map +1 -1
- package/build/components/create-template-part-modal/index.js +3 -0
- package/build/components/create-template-part-modal/index.js.map +1 -1
- package/build/components/dataviews-actions/index.js +46 -0
- package/build/components/dataviews-actions/index.js.map +1 -0
- package/build/components/editor/index.js +95 -16
- package/build/components/editor/index.js.map +1 -1
- package/build/components/global-styles/background-panel.js +13 -1
- package/build/components/global-styles/background-panel.js.map +1 -1
- package/build/components/global-styles/color-indicator-wrapper.js +2 -2
- package/build/components/global-styles/color-indicator-wrapper.js.map +1 -1
- package/build/components/global-styles/color-palette-panel.js +5 -2
- package/build/components/global-styles/color-palette-panel.js.map +1 -1
- package/build/components/global-styles/font-library-modal/context.js +9 -3
- package/build/components/global-styles/font-library-modal/context.js.map +1 -1
- package/build/components/global-styles/font-library-modal/font-collection.js +7 -2
- package/build/components/global-styles/font-library-modal/font-collection.js.map +1 -1
- package/build/components/global-styles/font-library-modal/installed-fonts.js +22 -20
- package/build/components/global-styles/font-library-modal/installed-fonts.js.map +1 -1
- package/build/components/global-styles/font-library-modal/utils/sort-font-faces.js +6 -2
- package/build/components/global-styles/font-library-modal/utils/sort-font-faces.js.map +1 -1
- package/build/components/global-styles/gradients-palette-panel.js +1 -2
- package/build/components/global-styles/gradients-palette-panel.js.map +1 -1
- package/build/components/global-styles/hooks.js +5 -2
- package/build/components/global-styles/hooks.js.map +1 -1
- package/build/components/global-styles/icon-with-current-color.js +2 -2
- package/build/components/global-styles/icon-with-current-color.js.map +1 -1
- package/build/components/global-styles/preset-colors.js +29 -0
- package/build/components/global-styles/preset-colors.js.map +1 -0
- package/build/components/global-styles/preview-colors.js +3 -7
- package/build/components/global-styles/preview-colors.js.map +1 -1
- package/build/components/global-styles/screen-color-palette.js +5 -5
- package/build/components/global-styles/screen-color-palette.js.map +1 -1
- package/build/components/global-styles/screen-colors.js +1 -4
- package/build/components/global-styles/screen-colors.js.map +1 -1
- package/build/components/global-styles/screen-revisions/revisions-buttons.js +2 -2
- package/build/components/global-styles/screen-revisions/revisions-buttons.js.map +1 -1
- package/build/components/global-styles/style-variations-container.js +8 -2
- package/build/components/global-styles/style-variations-container.js.map +1 -1
- package/build/components/global-styles/typography-example.js +5 -2
- package/build/components/global-styles/typography-example.js.map +1 -1
- package/build/components/global-styles/ui.js +4 -1
- package/build/components/global-styles/ui.js.map +1 -1
- package/build/components/global-styles/variations/variation.js +12 -6
- package/build/components/global-styles/variations/variation.js.map +1 -1
- package/build/components/global-styles/variations/variations-color.js +5 -5
- package/build/components/global-styles/variations/variations-color.js.map +1 -1
- package/build/components/global-styles-sidebar/default-sidebar.js.map +1 -0
- package/build/components/{sidebar-edit-mode/global-styles-sidebar.js → global-styles-sidebar/index.js} +8 -5
- package/build/components/global-styles-sidebar/index.js.map +1 -0
- package/build/components/header-edit-mode/index.js +21 -137
- package/build/components/header-edit-mode/index.js.map +1 -1
- package/build/components/header-edit-mode/more-menu/index.js +3 -97
- package/build/components/header-edit-mode/more-menu/index.js.map +1 -1
- package/build/components/keyboard-shortcuts/register.js +0 -49
- package/build/components/keyboard-shortcuts/register.js.map +1 -1
- package/build/components/layout/index.js +9 -9
- package/build/components/layout/index.js.map +1 -1
- package/build/components/layout/router.js +70 -44
- package/build/components/layout/router.js.map +1 -1
- package/build/components/page/index.js +2 -2
- package/build/components/page/index.js.map +1 -1
- package/build/components/page-pages/index.js +4 -14
- package/build/components/page-pages/index.js.map +1 -1
- package/build/components/page-patterns/dataviews-pattern-actions.js +15 -87
- package/build/components/page-patterns/dataviews-pattern-actions.js.map +1 -1
- package/build/components/page-patterns/header.js +3 -1
- package/build/components/page-patterns/header.js.map +1 -1
- package/build/components/page-patterns/index.js +28 -68
- package/build/components/page-patterns/index.js.map +1 -1
- package/build/components/page-patterns/use-patterns.js +1 -0
- package/build/components/page-patterns/use-patterns.js.map +1 -1
- package/build/components/page-templates/hooks.js.map +1 -0
- package/build/components/{page-templates-template-parts → page-templates}/index.js +73 -94
- package/build/components/page-templates/index.js.map +1 -0
- package/build/components/pagination/index.js +2 -2
- package/build/components/pagination/index.js.map +1 -1
- package/build/components/pattern-modal/duplicate.js +7 -5
- package/build/components/pattern-modal/duplicate.js.map +1 -1
- package/build/components/plugin-template-setting-panel/index.js +9 -0
- package/build/components/plugin-template-setting-panel/index.js.map +1 -1
- package/build/components/resizable-frame/index.js +20 -9
- package/build/components/resizable-frame/index.js.map +1 -1
- package/build/components/revisions/index.js +5 -2
- package/build/components/revisions/index.js.map +1 -1
- package/build/components/save-panel/index.js +4 -4
- package/build/components/save-panel/index.js.map +1 -1
- package/build/components/sidebar/index.js +61 -31
- package/build/components/sidebar/index.js.map +1 -1
- package/build/components/sidebar-button/index.js +2 -2
- package/build/components/sidebar-button/index.js.map +1 -1
- package/build/components/sidebar-dataviews/dataview-item.js +2 -2
- package/build/components/sidebar-dataviews/dataview-item.js.map +1 -1
- package/build/components/sidebar-navigation-item/index.js +5 -3
- package/build/components/sidebar-navigation-item/index.js.map +1 -1
- package/build/components/sidebar-navigation-screen/index.js +6 -32
- package/build/components/sidebar-navigation-screen/index.js.map +1 -1
- package/build/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-row.js +2 -2
- package/build/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-row.js.map +1 -1
- package/build/components/sidebar-navigation-screen-global-styles/index.js +4 -1
- package/build/components/sidebar-navigation-screen-global-styles/index.js.map +1 -1
- package/build/components/sidebar-navigation-screen-navigation-menu/index.js +10 -3
- package/build/components/sidebar-navigation-screen-navigation-menu/index.js.map +1 -1
- package/build/components/sidebar-navigation-screen-navigation-menu/more-menu.js +16 -1
- package/build/components/sidebar-navigation-screen-navigation-menu/more-menu.js.map +1 -1
- package/build/components/sidebar-navigation-screen-navigation-menu/single-navigation-menu.js +3 -0
- package/build/components/sidebar-navigation-screen-navigation-menu/single-navigation-menu.js.map +1 -1
- package/build/components/sidebar-navigation-screen-navigation-menus/index.js +16 -6
- package/build/components/sidebar-navigation-screen-navigation-menus/index.js.map +1 -1
- package/build/components/sidebar-navigation-screen-navigation-menus/leaf-more-menu.js +2 -9
- package/build/components/sidebar-navigation-screen-navigation-menus/leaf-more-menu.js.map +1 -1
- package/build/components/sidebar-navigation-screen-page/index.js +39 -8
- package/build/components/sidebar-navigation-screen-page/index.js.map +1 -1
- package/build/components/sidebar-navigation-screen-page/status-label.js +2 -2
- package/build/components/sidebar-navigation-screen-page/status-label.js.map +1 -1
- package/build/components/sidebar-navigation-screen-pattern/index.js +3 -15
- package/build/components/sidebar-navigation-screen-pattern/index.js.map +1 -1
- package/build/components/sidebar-navigation-screen-pattern/template-part-navigation-menus.js +3 -1
- package/build/components/sidebar-navigation-screen-pattern/template-part-navigation-menus.js.map +1 -1
- package/build/components/sidebar-navigation-screen-pattern/use-pattern-details.js +1 -1
- package/build/components/sidebar-navigation-screen-pattern/use-pattern-details.js.map +1 -1
- package/build/components/sidebar-navigation-screen-patterns/category-item.js +3 -2
- package/build/components/sidebar-navigation-screen-patterns/category-item.js.map +1 -1
- package/build/components/sidebar-navigation-screen-patterns/index.js +25 -29
- package/build/components/sidebar-navigation-screen-patterns/index.js.map +1 -1
- package/build/components/sidebar-navigation-screen-template/index.js +5 -2
- package/build/components/sidebar-navigation-screen-template/index.js.map +1 -1
- package/build/components/sidebar-navigation-screen-templates-browse/content.js +3 -3
- package/build/components/sidebar-navigation-screen-templates-browse/content.js.map +1 -1
- package/build/components/sidebar-navigation-screen-templates-browse/index.js +6 -33
- package/build/components/sidebar-navigation-screen-templates-browse/index.js.map +1 -1
- package/build/components/site-hub/index.js +3 -3
- package/build/components/site-hub/index.js.map +1 -1
- package/build/components/site-icon/index.js +2 -2
- package/build/components/site-icon/index.js.map +1 -1
- package/build/components/style-book/index.js +10 -7
- package/build/components/style-book/index.js.map +1 -1
- package/build/components/sync-state-with-url/use-init-edited-entity-from-url.js +0 -8
- package/build/components/sync-state-with-url/use-init-edited-entity-from-url.js.map +1 -1
- package/build/components/template-actions/index.js +1 -1
- package/build/components/template-actions/index.js.map +1 -1
- package/build/components/template-part-converter/index.js +18 -1
- package/build/components/template-part-converter/index.js.map +1 -1
- package/build/deprecated.js +55 -0
- package/build/deprecated.js.map +1 -0
- package/build/hooks/use-theme-style-variations/use-theme-style-variations-by-property.js +40 -6
- package/build/hooks/use-theme-style-variations/use-theme-style-variations-by-property.js.map +1 -1
- package/build/index.js +18 -18
- package/build/index.js.map +1 -1
- package/build/utils/constants.js +1 -2
- package/build/utils/constants.js.map +1 -1
- package/build/utils/get-is-list-page.js +1 -1
- package/build/utils/get-is-list-page.js.map +1 -1
- package/build/utils/use-activate-theme.js +9 -6
- package/build/utils/use-activate-theme.js.map +1 -1
- package/build-module/components/add-new-page/index.js +3 -0
- package/build-module/components/add-new-page/index.js.map +1 -1
- package/build-module/components/add-new-pattern/index.js +8 -7
- package/build-module/components/add-new-pattern/index.js.map +1 -1
- package/build-module/components/add-new-template/add-custom-generic-template-modal-content.js +3 -0
- package/build-module/components/add-new-template/add-custom-generic-template-modal-content.js.map +1 -1
- package/build-module/components/add-new-template/add-custom-template-modal-content.js +3 -1
- package/build-module/components/add-new-template/add-custom-template-modal-content.js.map +1 -1
- package/build-module/components/add-new-template/index.js +2 -2
- package/build-module/components/add-new-template/index.js.map +1 -1
- package/build-module/components/app/index.js +4 -2
- package/build-module/components/app/index.js.map +1 -1
- package/build-module/components/block-editor/editor-canvas.js +4 -18
- package/build-module/components/block-editor/editor-canvas.js.map +1 -1
- package/build-module/components/block-editor/resize-handle.js +21 -6
- package/build-module/components/block-editor/resize-handle.js.map +1 -1
- package/build-module/components/block-editor/site-editor-canvas.js +2 -2
- package/build-module/components/block-editor/site-editor-canvas.js.map +1 -1
- package/build-module/components/create-template-part-modal/index.js +3 -0
- package/build-module/components/create-template-part-modal/index.js.map +1 -1
- package/build-module/components/dataviews-actions/index.js +38 -0
- package/build-module/components/dataviews-actions/index.js.map +1 -0
- package/build-module/components/editor/index.js +96 -17
- package/build-module/components/editor/index.js.map +1 -1
- package/build-module/components/global-styles/background-panel.js +12 -1
- package/build-module/components/global-styles/background-panel.js.map +1 -1
- package/build-module/components/global-styles/color-indicator-wrapper.js +2 -2
- package/build-module/components/global-styles/color-indicator-wrapper.js.map +1 -1
- package/build-module/components/global-styles/color-palette-panel.js +4 -2
- package/build-module/components/global-styles/color-palette-panel.js.map +1 -1
- package/build-module/components/global-styles/font-library-modal/context.js +9 -3
- package/build-module/components/global-styles/font-library-modal/context.js.map +1 -1
- package/build-module/components/global-styles/font-library-modal/font-collection.js +7 -2
- package/build-module/components/global-styles/font-library-modal/font-collection.js.map +1 -1
- package/build-module/components/global-styles/font-library-modal/installed-fonts.js +22 -20
- package/build-module/components/global-styles/font-library-modal/installed-fonts.js.map +1 -1
- package/build-module/components/global-styles/font-library-modal/utils/sort-font-faces.js +6 -2
- package/build-module/components/global-styles/font-library-modal/utils/sort-font-faces.js.map +1 -1
- package/build-module/components/global-styles/gradients-palette-panel.js +1 -2
- package/build-module/components/global-styles/gradients-palette-panel.js.map +1 -1
- package/build-module/components/global-styles/hooks.js +4 -1
- package/build-module/components/global-styles/hooks.js.map +1 -1
- package/build-module/components/global-styles/icon-with-current-color.js +2 -2
- package/build-module/components/global-styles/icon-with-current-color.js.map +1 -1
- package/build-module/components/global-styles/preset-colors.js +22 -0
- package/build-module/components/global-styles/preset-colors.js.map +1 -0
- package/build-module/components/global-styles/preview-colors.js +3 -7
- package/build-module/components/global-styles/preview-colors.js.map +1 -1
- package/build-module/components/global-styles/screen-color-palette.js +5 -5
- package/build-module/components/global-styles/screen-color-palette.js.map +1 -1
- package/build-module/components/global-styles/screen-colors.js +1 -4
- package/build-module/components/global-styles/screen-colors.js.map +1 -1
- package/build-module/components/global-styles/screen-revisions/revisions-buttons.js +2 -2
- package/build-module/components/global-styles/screen-revisions/revisions-buttons.js.map +1 -1
- package/build-module/components/global-styles/style-variations-container.js +8 -2
- package/build-module/components/global-styles/style-variations-container.js.map +1 -1
- package/build-module/components/global-styles/typography-example.js +4 -1
- package/build-module/components/global-styles/typography-example.js.map +1 -1
- package/build-module/components/global-styles/ui.js +4 -1
- package/build-module/components/global-styles/ui.js.map +1 -1
- package/build-module/components/global-styles/variations/variation.js +11 -5
- package/build-module/components/global-styles/variations/variation.js.map +1 -1
- package/build-module/components/global-styles/variations/variations-color.js +6 -6
- package/build-module/components/global-styles/variations/variations-color.js.map +1 -1
- package/build-module/components/global-styles-sidebar/default-sidebar.js.map +1 -0
- package/build-module/components/{sidebar-edit-mode/global-styles-sidebar.js → global-styles-sidebar/index.js} +8 -5
- package/build-module/components/global-styles-sidebar/index.js.map +1 -0
- package/build-module/components/header-edit-mode/index.js +22 -138
- package/build-module/components/header-edit-mode/index.js.map +1 -1
- package/build-module/components/header-edit-mode/more-menu/index.js +5 -99
- package/build-module/components/header-edit-mode/more-menu/index.js.map +1 -1
- package/build-module/components/keyboard-shortcuts/register.js +0 -49
- package/build-module/components/keyboard-shortcuts/register.js.map +1 -1
- package/build-module/components/layout/index.js +9 -9
- package/build-module/components/layout/index.js.map +1 -1
- package/build-module/components/layout/router.js +70 -45
- package/build-module/components/layout/router.js.map +1 -1
- package/build-module/components/page/index.js +2 -2
- package/build-module/components/page/index.js.map +1 -1
- package/build-module/components/page-pages/index.js +5 -15
- package/build-module/components/page-pages/index.js.map +1 -1
- package/build-module/components/page-patterns/dataviews-pattern-actions.js +15 -87
- package/build-module/components/page-patterns/dataviews-pattern-actions.js.map +1 -1
- package/build-module/components/page-patterns/header.js +3 -1
- package/build-module/components/page-patterns/header.js.map +1 -1
- package/build-module/components/page-patterns/index.js +31 -71
- package/build-module/components/page-patterns/index.js.map +1 -1
- package/build-module/components/page-patterns/use-patterns.js +1 -0
- package/build-module/components/page-patterns/use-patterns.js.map +1 -1
- package/build-module/components/page-templates/hooks.js.map +1 -0
- package/build-module/components/{page-templates-template-parts → page-templates}/index.js +73 -94
- package/build-module/components/page-templates/index.js.map +1 -0
- package/build-module/components/pagination/index.js +2 -2
- package/build-module/components/pagination/index.js.map +1 -1
- package/build-module/components/pattern-modal/duplicate.js +7 -5
- package/build-module/components/pattern-modal/duplicate.js.map +1 -1
- package/build-module/components/plugin-template-setting-panel/index.js +8 -0
- package/build-module/components/plugin-template-setting-panel/index.js.map +1 -1
- package/build-module/components/resizable-frame/index.js +21 -10
- package/build-module/components/resizable-frame/index.js.map +1 -1
- package/build-module/components/revisions/index.js +4 -1
- package/build-module/components/revisions/index.js.map +1 -1
- package/build-module/components/save-panel/index.js +4 -4
- package/build-module/components/save-panel/index.js.map +1 -1
- package/build-module/components/sidebar/index.js +62 -32
- package/build-module/components/sidebar/index.js.map +1 -1
- package/build-module/components/sidebar-button/index.js +2 -2
- package/build-module/components/sidebar-button/index.js.map +1 -1
- package/build-module/components/sidebar-dataviews/dataview-item.js +2 -2
- package/build-module/components/sidebar-dataviews/dataview-item.js.map +1 -1
- package/build-module/components/sidebar-navigation-item/index.js +5 -3
- package/build-module/components/sidebar-navigation-item/index.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen/index.js +6 -32
- package/build-module/components/sidebar-navigation-screen/index.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-row.js +2 -2
- package/build-module/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-row.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-global-styles/index.js +4 -1
- package/build-module/components/sidebar-navigation-screen-global-styles/index.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-navigation-menu/index.js +10 -3
- package/build-module/components/sidebar-navigation-screen-navigation-menu/index.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-navigation-menu/more-menu.js +16 -1
- package/build-module/components/sidebar-navigation-screen-navigation-menu/more-menu.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-navigation-menu/single-navigation-menu.js +3 -0
- package/build-module/components/sidebar-navigation-screen-navigation-menu/single-navigation-menu.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-navigation-menus/index.js +16 -6
- package/build-module/components/sidebar-navigation-screen-navigation-menus/index.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-navigation-menus/leaf-more-menu.js +2 -9
- package/build-module/components/sidebar-navigation-screen-navigation-menus/leaf-more-menu.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-page/index.js +40 -9
- package/build-module/components/sidebar-navigation-screen-page/index.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-page/status-label.js +2 -2
- package/build-module/components/sidebar-navigation-screen-page/status-label.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-pattern/index.js +3 -15
- package/build-module/components/sidebar-navigation-screen-pattern/index.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-pattern/template-part-navigation-menus.js +3 -1
- package/build-module/components/sidebar-navigation-screen-pattern/template-part-navigation-menus.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-pattern/use-pattern-details.js +1 -1
- package/build-module/components/sidebar-navigation-screen-pattern/use-pattern-details.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-patterns/category-item.js +3 -2
- package/build-module/components/sidebar-navigation-screen-patterns/category-item.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-patterns/index.js +26 -30
- package/build-module/components/sidebar-navigation-screen-patterns/index.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-template/index.js +5 -2
- package/build-module/components/sidebar-navigation-screen-template/index.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-templates-browse/content.js +3 -3
- package/build-module/components/sidebar-navigation-screen-templates-browse/content.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-templates-browse/index.js +6 -33
- package/build-module/components/sidebar-navigation-screen-templates-browse/index.js.map +1 -1
- package/build-module/components/site-hub/index.js +3 -3
- package/build-module/components/site-hub/index.js.map +1 -1
- package/build-module/components/site-icon/index.js +2 -2
- package/build-module/components/site-icon/index.js.map +1 -1
- package/build-module/components/style-book/index.js +9 -6
- 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 +0 -8
- package/build-module/components/sync-state-with-url/use-init-edited-entity-from-url.js.map +1 -1
- package/build-module/components/template-actions/index.js +1 -1
- package/build-module/components/template-actions/index.js.map +1 -1
- package/build-module/components/template-part-converter/index.js +18 -1
- package/build-module/components/template-part-converter/index.js.map +1 -1
- package/build-module/deprecated.js +45 -0
- package/build-module/deprecated.js.map +1 -0
- package/build-module/hooks/use-theme-style-variations/use-theme-style-variations-by-property.js +38 -5
- package/build-module/hooks/use-theme-style-variations/use-theme-style-variations-by-property.js.map +1 -1
- package/build-module/index.js +2 -4
- package/build-module/index.js.map +1 -1
- package/build-module/utils/constants.js +0 -1
- package/build-module/utils/constants.js.map +1 -1
- package/build-module/utils/get-is-list-page.js +1 -1
- package/build-module/utils/get-is-list-page.js.map +1 -1
- package/build-module/utils/use-activate-theme.js +9 -6
- package/build-module/utils/use-activate-theme.js.map +1 -1
- package/build-style/style-rtl.css +208 -484
- package/build-style/style.css +208 -484
- package/package.json +43 -45
- package/src/components/add-new-page/index.js +7 -1
- package/src/components/add-new-pattern/index.js +15 -12
- package/src/components/add-new-template/add-custom-generic-template-modal-content.js +3 -0
- package/src/components/add-new-template/add-custom-template-modal-content.js +3 -1
- package/src/components/add-new-template/index.js +2 -2
- package/src/components/app/index.js +5 -2
- package/src/components/block-editor/editor-canvas.js +6 -26
- package/src/components/block-editor/resize-handle.js +30 -11
- package/src/components/block-editor/site-editor-canvas.js +2 -2
- package/src/components/block-editor/style.scss +12 -17
- package/src/components/create-template-part-modal/index.js +3 -0
- package/src/components/dataviews-actions/index.js +38 -0
- package/src/components/editor/index.js +117 -18
- package/src/components/editor/style.scss +6 -5
- package/src/components/global-styles/background-panel.js +17 -2
- package/src/components/global-styles/color-indicator-wrapper.js +2 -2
- package/src/components/global-styles/color-palette-panel.js +3 -4
- package/src/components/global-styles/font-library-modal/context.js +9 -3
- package/src/components/global-styles/font-library-modal/font-collection.js +31 -12
- package/src/components/global-styles/font-library-modal/installed-fonts.js +82 -54
- package/src/components/global-styles/font-library-modal/style.scss +17 -0
- package/src/components/global-styles/font-library-modal/utils/sort-font-faces.js +6 -2
- package/src/components/global-styles/gradients-palette-panel.js +1 -4
- package/src/components/global-styles/hooks.js +2 -1
- package/src/components/global-styles/icon-with-current-color.js +2 -2
- package/src/components/global-styles/preset-colors.js +18 -0
- package/src/components/global-styles/preview-colors.js +4 -7
- package/src/components/global-styles/screen-color-palette.js +4 -4
- package/src/components/global-styles/screen-colors.js +0 -2
- package/src/components/global-styles/screen-revisions/revisions-buttons.js +2 -2
- package/src/components/global-styles/stories/index.story.js +2 -1
- package/src/components/global-styles/style-variations-container.js +11 -2
- package/src/components/global-styles/typography-example.js +2 -1
- package/src/components/global-styles/ui.js +5 -1
- package/src/components/global-styles/variations/style.scss +15 -31
- package/src/components/global-styles/variations/variation.js +13 -10
- package/src/components/global-styles/variations/variations-color.js +5 -8
- package/src/components/{sidebar-edit-mode/global-styles-sidebar.js → global-styles-sidebar/index.js} +7 -2
- package/src/components/{sidebar-edit-mode → global-styles-sidebar}/style.scss +0 -11
- package/src/components/header-edit-mode/index.js +25 -184
- package/src/components/header-edit-mode/more-menu/index.js +8 -145
- package/src/components/header-edit-mode/style.scss +1 -271
- package/src/components/keyboard-shortcuts/register.js +0 -58
- package/src/components/layout/index.js +14 -10
- package/src/components/layout/router.js +66 -56
- package/src/components/layout/style.scss +2 -1
- package/src/components/page/index.js +2 -2
- package/src/components/page-pages/index.js +8 -28
- package/src/components/page-patterns/dataviews-pattern-actions.js +11 -101
- package/src/components/page-patterns/header.js +3 -1
- package/src/components/page-patterns/index.js +32 -110
- package/src/components/page-patterns/style.scss +14 -1
- package/src/components/page-patterns/use-patterns.js +1 -0
- package/src/components/{page-templates-template-parts → page-templates}/index.js +33 -75
- package/src/components/{page-templates-template-parts → page-templates}/style.scss +2 -2
- package/src/components/pagination/index.js +2 -2
- package/src/components/pattern-modal/duplicate.js +4 -3
- package/src/components/plugin-template-setting-panel/index.js +8 -0
- package/src/components/resizable-frame/index.js +20 -7
- package/src/components/revisions/index.js +2 -1
- package/src/components/save-panel/index.js +4 -4
- package/src/components/sidebar/index.js +61 -37
- package/src/components/sidebar-button/index.js +2 -5
- package/src/components/sidebar-dataviews/dataview-item.js +4 -7
- package/src/components/sidebar-navigation-item/index.js +3 -3
- package/src/components/sidebar-navigation-screen/index.js +7 -31
- package/src/components/sidebar-navigation-screen/style.scss +11 -9
- package/src/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-row.js +2 -2
- package/src/components/sidebar-navigation-screen-global-styles/index.js +2 -1
- package/src/components/sidebar-navigation-screen-navigation-menu/index.js +6 -1
- package/src/components/sidebar-navigation-screen-navigation-menu/more-menu.js +18 -1
- package/src/components/sidebar-navigation-screen-navigation-menu/single-navigation-menu.js +3 -0
- package/src/components/sidebar-navigation-screen-navigation-menus/index.js +8 -4
- package/src/components/sidebar-navigation-screen-navigation-menus/leaf-more-menu.js +0 -10
- package/src/components/sidebar-navigation-screen-page/index.js +48 -9
- package/src/components/sidebar-navigation-screen-page/status-label.js +2 -2
- package/src/components/sidebar-navigation-screen-pattern/index.js +1 -12
- package/src/components/sidebar-navigation-screen-pattern/template-part-navigation-menus.js +3 -1
- package/src/components/sidebar-navigation-screen-pattern/use-pattern-details.js +1 -1
- package/src/components/sidebar-navigation-screen-patterns/category-item.js +2 -1
- package/src/components/sidebar-navigation-screen-patterns/index.js +20 -39
- package/src/components/sidebar-navigation-screen-template/index.js +3 -2
- package/src/components/sidebar-navigation-screen-templates-browse/content.js +3 -3
- package/src/components/sidebar-navigation-screen-templates-browse/index.js +8 -39
- package/src/components/site-hub/index.js +3 -3
- package/src/components/site-icon/index.js +2 -2
- package/src/components/style-book/index.js +7 -6
- package/src/components/sync-state-with-url/use-init-edited-entity-from-url.js +0 -4
- package/src/components/template-actions/index.js +1 -1
- package/src/components/template-part-converter/index.js +16 -3
- package/src/deprecated.js +42 -0
- package/src/hooks/use-theme-style-variations/use-theme-style-variations-by-property.js +71 -17
- package/src/index.js +2 -9
- package/src/style.scss +2 -16
- package/src/utils/constants.js +1 -1
- package/src/utils/get-is-list-page.js +1 -3
- package/src/utils/use-activate-theme.js +4 -4
- package/build/components/global-styles/global-styles-provider.js +0 -129
- package/build/components/global-styles/global-styles-provider.js.map +0 -1
- package/build/components/header-edit-mode/document-tools/index.js +0 -68
- package/build/components/header-edit-mode/document-tools/index.js.map +0 -1
- package/build/components/header-edit-mode/more-menu/copy-content-menu-item.js +0 -59
- package/build/components/header-edit-mode/more-menu/copy-content-menu-item.js.map +0 -1
- package/build/components/header-edit-mode/tools-more-menu-group/index.js +0 -23
- package/build/components/header-edit-mode/tools-more-menu-group/index.js.map +0 -1
- package/build/components/keyboard-shortcuts/edit-mode.js +0 -56
- package/build/components/keyboard-shortcuts/edit-mode.js.map +0 -1
- package/build/components/page-templates-template-parts/add-new-template-part.js +0 -65
- package/build/components/page-templates-template-parts/add-new-template-part.js.map +0 -1
- package/build/components/page-templates-template-parts/hooks.js.map +0 -1
- package/build/components/page-templates-template-parts/index.js.map +0 -1
- package/build/components/sidebar-edit-mode/default-sidebar.js.map +0 -1
- package/build/components/sidebar-edit-mode/global-styles-sidebar.js.map +0 -1
- package/build/components/sidebar-edit-mode/index.js +0 -146
- package/build/components/sidebar-edit-mode/index.js.map +0 -1
- package/build/components/sidebar-edit-mode/page-panels/index.js +0 -98
- package/build/components/sidebar-edit-mode/page-panels/index.js.map +0 -1
- package/build/components/sidebar-edit-mode/page-panels/page-content.js +0 -34
- package/build/components/sidebar-edit-mode/page-panels/page-content.js.map +0 -1
- package/build/components/sidebar-edit-mode/page-panels/page-status.js +0 -188
- package/build/components/sidebar-edit-mode/page-panels/page-status.js.map +0 -1
- package/build/components/sidebar-edit-mode/page-panels/page-summary.js +0 -39
- package/build/components/sidebar-edit-mode/page-panels/page-summary.js.map +0 -1
- package/build/components/sidebar-edit-mode/settings-header/index.js +0 -42
- package/build/components/sidebar-edit-mode/settings-header/index.js.map +0 -1
- package/build/components/sidebar-edit-mode/template-panel/hooks.js +0 -86
- package/build/components/sidebar-edit-mode/template-panel/hooks.js.map +0 -1
- package/build/components/sidebar-edit-mode/template-panel/index.js +0 -130
- package/build/components/sidebar-edit-mode/template-panel/index.js.map +0 -1
- package/build/components/start-template-options/index.js +0 -191
- package/build/components/start-template-options/index.js.map +0 -1
- package/build/utils/math.js +0 -98
- package/build/utils/math.js.map +0 -1
- package/build-module/components/global-styles/global-styles-provider.js +0 -120
- package/build-module/components/global-styles/global-styles-provider.js.map +0 -1
- package/build-module/components/header-edit-mode/document-tools/index.js +0 -61
- package/build-module/components/header-edit-mode/document-tools/index.js.map +0 -1
- package/build-module/components/header-edit-mode/more-menu/copy-content-menu-item.js +0 -52
- package/build-module/components/header-edit-mode/more-menu/copy-content-menu-item.js.map +0 -1
- package/build-module/components/header-edit-mode/tools-more-menu-group/index.js +0 -16
- package/build-module/components/header-edit-mode/tools-more-menu-group/index.js.map +0 -1
- package/build-module/components/keyboard-shortcuts/edit-mode.js +0 -49
- package/build-module/components/keyboard-shortcuts/edit-mode.js.map +0 -1
- package/build-module/components/page-templates-template-parts/add-new-template-part.js +0 -57
- package/build-module/components/page-templates-template-parts/add-new-template-part.js.map +0 -1
- package/build-module/components/page-templates-template-parts/hooks.js.map +0 -1
- package/build-module/components/page-templates-template-parts/index.js.map +0 -1
- package/build-module/components/sidebar-edit-mode/default-sidebar.js.map +0 -1
- package/build-module/components/sidebar-edit-mode/global-styles-sidebar.js.map +0 -1
- package/build-module/components/sidebar-edit-mode/index.js +0 -137
- package/build-module/components/sidebar-edit-mode/index.js.map +0 -1
- package/build-module/components/sidebar-edit-mode/page-panels/index.js +0 -90
- package/build-module/components/sidebar-edit-mode/page-panels/index.js.map +0 -1
- package/build-module/components/sidebar-edit-mode/page-panels/page-content.js +0 -27
- package/build-module/components/sidebar-edit-mode/page-panels/page-content.js.map +0 -1
- package/build-module/components/sidebar-edit-mode/page-panels/page-status.js +0 -180
- package/build-module/components/sidebar-edit-mode/page-panels/page-status.js.map +0 -1
- package/build-module/components/sidebar-edit-mode/page-panels/page-summary.js +0 -31
- package/build-module/components/sidebar-edit-mode/page-panels/page-summary.js.map +0 -1
- package/build-module/components/sidebar-edit-mode/settings-header/index.js +0 -35
- package/build-module/components/sidebar-edit-mode/settings-header/index.js.map +0 -1
- package/build-module/components/sidebar-edit-mode/template-panel/hooks.js +0 -79
- package/build-module/components/sidebar-edit-mode/template-panel/hooks.js.map +0 -1
- package/build-module/components/sidebar-edit-mode/template-panel/index.js +0 -122
- package/build-module/components/sidebar-edit-mode/template-panel/index.js.map +0 -1
- package/build-module/components/start-template-options/index.js +0 -184
- package/build-module/components/start-template-options/index.js.map +0 -1
- package/build-module/utils/math.js +0 -92
- package/build-module/utils/math.js.map +0 -1
- package/src/components/global-styles/global-styles-provider.js +0 -162
- package/src/components/header-edit-mode/document-tools/index.js +0 -68
- package/src/components/header-edit-mode/more-menu/copy-content-menu-item.js +0 -51
- package/src/components/header-edit-mode/tools-more-menu-group/index.js +0 -16
- package/src/components/keyboard-shortcuts/edit-mode.js +0 -59
- package/src/components/page-templates-template-parts/add-new-template-part.js +0 -62
- package/src/components/sidebar-edit-mode/index.js +0 -162
- package/src/components/sidebar-edit-mode/page-panels/index.js +0 -105
- package/src/components/sidebar-edit-mode/page-panels/page-content.js +0 -29
- package/src/components/sidebar-edit-mode/page-panels/page-status.js +0 -249
- package/src/components/sidebar-edit-mode/page-panels/page-summary.js +0 -49
- package/src/components/sidebar-edit-mode/page-panels/style.scss +0 -34
- package/src/components/sidebar-edit-mode/settings-header/index.js +0 -43
- package/src/components/sidebar-edit-mode/settings-header/style.scss +0 -14
- package/src/components/sidebar-edit-mode/template-panel/hooks.js +0 -114
- package/src/components/sidebar-edit-mode/template-panel/index.js +0 -144
- package/src/components/sidebar-edit-mode/template-panel/style.scss +0 -16
- package/src/components/start-template-options/index.js +0 -231
- package/src/components/start-template-options/style.scss +0 -55
- package/src/utils/math.js +0 -93
- /package/build/components/{sidebar-edit-mode → global-styles-sidebar}/default-sidebar.js +0 -0
- /package/build/components/{page-templates-template-parts → page-templates}/hooks.js +0 -0
- /package/build-module/components/{sidebar-edit-mode → global-styles-sidebar}/default-sidebar.js +0 -0
- /package/build-module/components/{page-templates-template-parts → page-templates}/hooks.js +0 -0
- /package/src/components/{sidebar-edit-mode → global-styles-sidebar}/default-sidebar.js +0 -0
- /package/src/components/{page-templates-template-parts → page-templates}/hooks.js +0 -0
|
@@ -9,8 +9,8 @@ import { plus, symbol, symbolFilled, upload } from '@wordpress/icons';
|
|
|
9
9
|
import { useSelect, useDispatch } from '@wordpress/data';
|
|
10
10
|
import { privateApis as routerPrivateApis } from '@wordpress/router';
|
|
11
11
|
import { privateApis as editPatternsPrivateApis, store as patternsStore } from '@wordpress/patterns';
|
|
12
|
-
import { store as coreStore } from '@wordpress/core-data';
|
|
13
12
|
import { store as noticesStore } from '@wordpress/notices';
|
|
13
|
+
import { store as coreStore } from '@wordpress/core-data';
|
|
14
14
|
|
|
15
15
|
/**
|
|
16
16
|
* Internal dependencies
|
|
@@ -34,9 +34,6 @@ export default function AddNewPattern() {
|
|
|
34
34
|
} = useLocation();
|
|
35
35
|
const [showPatternModal, setShowPatternModal] = useState(false);
|
|
36
36
|
const [showTemplatePartModal, setShowTemplatePartModal] = useState(false);
|
|
37
|
-
const isBlockBasedTheme = useSelect(select => {
|
|
38
|
-
return select(coreStore).getCurrentTheme()?.is_block_theme;
|
|
39
|
-
}, []);
|
|
40
37
|
const {
|
|
41
38
|
createPatternFromFile
|
|
42
39
|
} = unlock(useDispatch(patternsStore));
|
|
@@ -45,6 +42,7 @@ export default function AddNewPattern() {
|
|
|
45
42
|
createErrorNotice
|
|
46
43
|
} = useDispatch(noticesStore);
|
|
47
44
|
const patternUploadInputRef = useRef();
|
|
45
|
+
const isBlockBasedTheme = useSelect(select => select(coreStore).getCurrentTheme()?.is_block_theme, []);
|
|
48
46
|
function handleCreatePattern({
|
|
49
47
|
pattern,
|
|
50
48
|
categoryId
|
|
@@ -72,11 +70,12 @@ export default function AddNewPattern() {
|
|
|
72
70
|
setShowPatternModal(false);
|
|
73
71
|
setShowTemplatePartModal(false);
|
|
74
72
|
}
|
|
75
|
-
const controls = [
|
|
73
|
+
const controls = [];
|
|
74
|
+
controls.push({
|
|
76
75
|
icon: symbol,
|
|
77
76
|
onClick: () => setShowPatternModal(true),
|
|
78
77
|
title: __('Create pattern')
|
|
79
|
-
}
|
|
78
|
+
});
|
|
80
79
|
if (isBlockBasedTheme) {
|
|
81
80
|
controls.push({
|
|
82
81
|
icon: symbolFilled,
|
|
@@ -118,7 +117,9 @@ export default function AddNewPattern() {
|
|
|
118
117
|
ref: patternUploadInputRef,
|
|
119
118
|
onChange: async event => {
|
|
120
119
|
const file = event.target.files?.[0];
|
|
121
|
-
if (!file)
|
|
120
|
+
if (!file) {
|
|
121
|
+
return;
|
|
122
|
+
}
|
|
122
123
|
try {
|
|
123
124
|
let currentCategoryId;
|
|
124
125
|
// When we're not handling template parts, we should
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["DropdownMenu","useState","useRef","__","sprintf","plus","symbol","symbolFilled","upload","useSelect","useDispatch","privateApis","routerPrivateApis","editPatternsPrivateApis","store","patternsStore","coreStore","noticesStore","CreateTemplatePartModal","SidebarButton","unlock","PATTERN_TYPES","PATTERN_DEFAULT_CATEGORY","TEMPLATE_PART_POST_TYPE","useHistory","useLocation","CreatePatternModal","useAddPatternCategory","AddNewPattern","history","params","showPatternModal","setShowPatternModal","showTemplatePartModal","setShowTemplatePartModal","isBlockBasedTheme","select","getCurrentTheme","is_block_theme","createPatternFromFile","createSuccessNotice","createErrorNotice","patternUploadInputRef","handleCreatePattern","pattern","categoryId","push","postId","id","postType","user","categoryType","theme","canvas","handleCreateTemplatePart","templatePart","handleError","controls","icon","onClick","title","current","click","categoryMap","findOrCreateTerm","createElement","Fragment","toggleProps","as","label","onClose","onSuccess","onError","closeModal","blocks","onCreate","type","accept","hidden","ref","onChange","event","file","target","files","currentCategoryId","currentCategory","values","find","term","name","undefined","path","raw","err","message","value"],"sources":["@wordpress/edit-site/src/components/add-new-pattern/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { DropdownMenu } from '@wordpress/components';\nimport { useState, useRef } from '@wordpress/element';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { plus, symbol, symbolFilled, upload } from '@wordpress/icons';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\nimport {\n\tprivateApis as editPatternsPrivateApis,\n\tstore as patternsStore,\n} from '@wordpress/patterns';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { store as noticesStore } from '@wordpress/notices';\n\n/**\n * Internal dependencies\n */\nimport CreateTemplatePartModal from '../create-template-part-modal';\nimport SidebarButton from '../sidebar-button';\nimport { unlock } from '../../lock-unlock';\nimport {\n\tPATTERN_TYPES,\n\tPATTERN_DEFAULT_CATEGORY,\n\tTEMPLATE_PART_POST_TYPE,\n} from '../../utils/constants';\n\nconst { useHistory, useLocation } = unlock( routerPrivateApis );\nconst { CreatePatternModal, useAddPatternCategory } = unlock(\n\teditPatternsPrivateApis\n);\n\nexport default function AddNewPattern() {\n\tconst history = useHistory();\n\tconst { params } = useLocation();\n\tconst [ showPatternModal, setShowPatternModal ] = useState( false );\n\tconst [ showTemplatePartModal, setShowTemplatePartModal ] =\n\t\tuseState( false );\n\tconst isBlockBasedTheme = useSelect( ( select ) => {\n\t\treturn select( coreStore ).getCurrentTheme()?.is_block_theme;\n\t}, [] );\n\tconst { createPatternFromFile } = unlock( useDispatch( patternsStore ) );\n\tconst { createSuccessNotice, createErrorNotice } =\n\t\tuseDispatch( noticesStore );\n\tconst patternUploadInputRef = useRef();\n\n\tfunction handleCreatePattern( { pattern, categoryId } ) {\n\t\tsetShowPatternModal( false );\n\n\t\thistory.push( {\n\t\t\tpostId: pattern.id,\n\t\t\tpostType: PATTERN_TYPES.user,\n\t\t\tcategoryType: PATTERN_TYPES.theme,\n\t\t\tcategoryId,\n\t\t\tcanvas: 'edit',\n\t\t} );\n\t}\n\n\tfunction handleCreateTemplatePart( templatePart ) {\n\t\tsetShowTemplatePartModal( false );\n\n\t\t// Navigate to the created template part editor.\n\t\thistory.push( {\n\t\t\tpostId: templatePart.id,\n\t\t\tpostType: TEMPLATE_PART_POST_TYPE,\n\t\t\tcanvas: 'edit',\n\t\t} );\n\t}\n\n\tfunction handleError() {\n\t\tsetShowPatternModal( false );\n\t\tsetShowTemplatePartModal( false );\n\t}\n\n\tconst controls = [\n\t\t{\n\t\t\ticon: symbol,\n\t\t\tonClick: () => setShowPatternModal( true ),\n\t\t\ttitle: __( 'Create pattern' ),\n\t\t},\n\t];\n\n\tif ( isBlockBasedTheme ) {\n\t\tcontrols.push( {\n\t\t\ticon: symbolFilled,\n\t\t\tonClick: () => setShowTemplatePartModal( true ),\n\t\t\ttitle: __( 'Create template part' ),\n\t\t} );\n\t}\n\n\tcontrols.push( {\n\t\ticon: upload,\n\t\tonClick: () => {\n\t\t\tpatternUploadInputRef.current.click();\n\t\t},\n\t\ttitle: __( 'Import pattern from JSON' ),\n\t} );\n\n\tconst { categoryMap, findOrCreateTerm } = useAddPatternCategory();\n\treturn (\n\t\t<>\n\t\t\t<DropdownMenu\n\t\t\t\tcontrols={ controls }\n\t\t\t\ttoggleProps={ {\n\t\t\t\t\tas: SidebarButton,\n\t\t\t\t} }\n\t\t\t\ticon={ plus }\n\t\t\t\tlabel={ __( 'Create pattern' ) }\n\t\t\t/>\n\t\t\t{ showPatternModal && (\n\t\t\t\t<CreatePatternModal\n\t\t\t\t\tonClose={ () => setShowPatternModal( false ) }\n\t\t\t\t\tonSuccess={ handleCreatePattern }\n\t\t\t\t\tonError={ handleError }\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t{ showTemplatePartModal && (\n\t\t\t\t<CreateTemplatePartModal\n\t\t\t\t\tcloseModal={ () => setShowTemplatePartModal( false ) }\n\t\t\t\t\tblocks={ [] }\n\t\t\t\t\tonCreate={ handleCreateTemplatePart }\n\t\t\t\t\tonError={ handleError }\n\t\t\t\t/>\n\t\t\t) }\n\n\t\t\t<input\n\t\t\t\ttype=\"file\"\n\t\t\t\taccept=\".json\"\n\t\t\t\thidden\n\t\t\t\tref={ patternUploadInputRef }\n\t\t\t\tonChange={ async ( event ) => {\n\t\t\t\t\tconst file = event.target.files?.[ 0 ];\n\t\t\t\t\tif ( ! file ) return;\n\t\t\t\t\ttry {\n\t\t\t\t\t\tlet currentCategoryId;\n\t\t\t\t\t\t// When we're not handling template parts, we should\n\t\t\t\t\t\t// add or create the proper pattern category.\n\t\t\t\t\t\tif ( params.categoryType !== TEMPLATE_PART_POST_TYPE ) {\n\t\t\t\t\t\t\tconst currentCategory = categoryMap\n\t\t\t\t\t\t\t\t.values()\n\t\t\t\t\t\t\t\t.find(\n\t\t\t\t\t\t\t\t\t( term ) => term.name === params.categoryId\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\tif ( !! currentCategory ) {\n\t\t\t\t\t\t\t\tcurrentCategoryId =\n\t\t\t\t\t\t\t\t\tcurrentCategory.id ||\n\t\t\t\t\t\t\t\t\t( await findOrCreateTerm(\n\t\t\t\t\t\t\t\t\t\tcurrentCategory.label\n\t\t\t\t\t\t\t\t\t) );\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\tconst pattern = await createPatternFromFile(\n\t\t\t\t\t\t\tfile,\n\t\t\t\t\t\t\tcurrentCategoryId\n\t\t\t\t\t\t\t\t? [ currentCategoryId ]\n\t\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t\t);\n\n\t\t\t\t\t\t// Navigate to the All patterns category for the newly created pattern\n\t\t\t\t\t\t// if we're not on that page already and if we're not in the `my-patterns`\n\t\t\t\t\t\t// category.\n\t\t\t\t\t\tif (\n\t\t\t\t\t\t\t! currentCategoryId &&\n\t\t\t\t\t\t\tparams.categoryId !== 'my-patterns'\n\t\t\t\t\t\t) {\n\t\t\t\t\t\t\thistory.push( {\n\t\t\t\t\t\t\t\tpath: `/patterns`,\n\t\t\t\t\t\t\t\tcategoryType: PATTERN_TYPES.theme,\n\t\t\t\t\t\t\t\tcategoryId: PATTERN_DEFAULT_CATEGORY,\n\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tcreateSuccessNotice(\n\t\t\t\t\t\t\tsprintf(\n\t\t\t\t\t\t\t\t// translators: %s: The imported pattern's title.\n\t\t\t\t\t\t\t\t__( 'Imported \"%s\" from JSON.' ),\n\t\t\t\t\t\t\t\tpattern.title.raw\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t\t\t\t\tid: 'import-pattern-success',\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t);\n\t\t\t\t\t} catch ( err ) {\n\t\t\t\t\t\tcreateErrorNotice( err.message, {\n\t\t\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t\t\t\tid: 'import-pattern-error',\n\t\t\t\t\t\t} );\n\t\t\t\t\t} finally {\n\t\t\t\t\t\tevent.target.value = '';\n\t\t\t\t\t}\n\t\t\t\t} }\n\t\t\t/>\n\t\t</>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["DropdownMenu","useState","useRef","__","sprintf","plus","symbol","symbolFilled","upload","useSelect","useDispatch","privateApis","routerPrivateApis","editPatternsPrivateApis","store","patternsStore","noticesStore","coreStore","CreateTemplatePartModal","SidebarButton","unlock","PATTERN_TYPES","PATTERN_DEFAULT_CATEGORY","TEMPLATE_PART_POST_TYPE","useHistory","useLocation","CreatePatternModal","useAddPatternCategory","AddNewPattern","history","params","showPatternModal","setShowPatternModal","showTemplatePartModal","setShowTemplatePartModal","createPatternFromFile","createSuccessNotice","createErrorNotice","patternUploadInputRef","isBlockBasedTheme","select","getCurrentTheme","is_block_theme","handleCreatePattern","pattern","categoryId","push","postId","id","postType","user","categoryType","theme","canvas","handleCreateTemplatePart","templatePart","handleError","controls","icon","onClick","title","current","click","categoryMap","findOrCreateTerm","createElement","Fragment","toggleProps","as","label","onClose","onSuccess","onError","closeModal","blocks","onCreate","type","accept","hidden","ref","onChange","event","file","target","files","currentCategoryId","currentCategory","values","find","term","name","undefined","path","raw","err","message","value"],"sources":["@wordpress/edit-site/src/components/add-new-pattern/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { DropdownMenu } from '@wordpress/components';\nimport { useState, useRef } from '@wordpress/element';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { plus, symbol, symbolFilled, upload } from '@wordpress/icons';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\nimport {\n\tprivateApis as editPatternsPrivateApis,\n\tstore as patternsStore,\n} from '@wordpress/patterns';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport CreateTemplatePartModal from '../create-template-part-modal';\nimport SidebarButton from '../sidebar-button';\nimport { unlock } from '../../lock-unlock';\nimport {\n\tPATTERN_TYPES,\n\tPATTERN_DEFAULT_CATEGORY,\n\tTEMPLATE_PART_POST_TYPE,\n} from '../../utils/constants';\n\nconst { useHistory, useLocation } = unlock( routerPrivateApis );\nconst { CreatePatternModal, useAddPatternCategory } = unlock(\n\teditPatternsPrivateApis\n);\n\nexport default function AddNewPattern() {\n\tconst history = useHistory();\n\tconst { params } = useLocation();\n\tconst [ showPatternModal, setShowPatternModal ] = useState( false );\n\tconst [ showTemplatePartModal, setShowTemplatePartModal ] =\n\t\tuseState( false );\n\tconst { createPatternFromFile } = unlock( useDispatch( patternsStore ) );\n\tconst { createSuccessNotice, createErrorNotice } =\n\t\tuseDispatch( noticesStore );\n\tconst patternUploadInputRef = useRef();\n\tconst isBlockBasedTheme = useSelect(\n\t\t( select ) => select( coreStore ).getCurrentTheme()?.is_block_theme,\n\t\t[]\n\t);\n\n\tfunction handleCreatePattern( { pattern, categoryId } ) {\n\t\tsetShowPatternModal( false );\n\n\t\thistory.push( {\n\t\t\tpostId: pattern.id,\n\t\t\tpostType: PATTERN_TYPES.user,\n\t\t\tcategoryType: PATTERN_TYPES.theme,\n\t\t\tcategoryId,\n\t\t\tcanvas: 'edit',\n\t\t} );\n\t}\n\n\tfunction handleCreateTemplatePart( templatePart ) {\n\t\tsetShowTemplatePartModal( false );\n\n\t\t// Navigate to the created template part editor.\n\t\thistory.push( {\n\t\t\tpostId: templatePart.id,\n\t\t\tpostType: TEMPLATE_PART_POST_TYPE,\n\t\t\tcanvas: 'edit',\n\t\t} );\n\t}\n\n\tfunction handleError() {\n\t\tsetShowPatternModal( false );\n\t\tsetShowTemplatePartModal( false );\n\t}\n\n\tconst controls = [];\n\n\tcontrols.push( {\n\t\ticon: symbol,\n\t\tonClick: () => setShowPatternModal( true ),\n\t\ttitle: __( 'Create pattern' ),\n\t} );\n\n\tif ( isBlockBasedTheme ) {\n\t\tcontrols.push( {\n\t\t\ticon: symbolFilled,\n\t\t\tonClick: () => setShowTemplatePartModal( true ),\n\t\t\ttitle: __( 'Create template part' ),\n\t\t} );\n\t}\n\n\tcontrols.push( {\n\t\ticon: upload,\n\t\tonClick: () => {\n\t\t\tpatternUploadInputRef.current.click();\n\t\t},\n\t\ttitle: __( 'Import pattern from JSON' ),\n\t} );\n\n\tconst { categoryMap, findOrCreateTerm } = useAddPatternCategory();\n\treturn (\n\t\t<>\n\t\t\t<DropdownMenu\n\t\t\t\tcontrols={ controls }\n\t\t\t\ttoggleProps={ {\n\t\t\t\t\tas: SidebarButton,\n\t\t\t\t} }\n\t\t\t\ticon={ plus }\n\t\t\t\tlabel={ __( 'Create pattern' ) }\n\t\t\t/>\n\t\t\t{ showPatternModal && (\n\t\t\t\t<CreatePatternModal\n\t\t\t\t\tonClose={ () => setShowPatternModal( false ) }\n\t\t\t\t\tonSuccess={ handleCreatePattern }\n\t\t\t\t\tonError={ handleError }\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t{ showTemplatePartModal && (\n\t\t\t\t<CreateTemplatePartModal\n\t\t\t\t\tcloseModal={ () => setShowTemplatePartModal( false ) }\n\t\t\t\t\tblocks={ [] }\n\t\t\t\t\tonCreate={ handleCreateTemplatePart }\n\t\t\t\t\tonError={ handleError }\n\t\t\t\t/>\n\t\t\t) }\n\n\t\t\t<input\n\t\t\t\ttype=\"file\"\n\t\t\t\taccept=\".json\"\n\t\t\t\thidden\n\t\t\t\tref={ patternUploadInputRef }\n\t\t\t\tonChange={ async ( event ) => {\n\t\t\t\t\tconst file = event.target.files?.[ 0 ];\n\t\t\t\t\tif ( ! file ) {\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t\ttry {\n\t\t\t\t\t\tlet currentCategoryId;\n\t\t\t\t\t\t// When we're not handling template parts, we should\n\t\t\t\t\t\t// add or create the proper pattern category.\n\t\t\t\t\t\tif ( params.categoryType !== TEMPLATE_PART_POST_TYPE ) {\n\t\t\t\t\t\t\tconst currentCategory = categoryMap\n\t\t\t\t\t\t\t\t.values()\n\t\t\t\t\t\t\t\t.find(\n\t\t\t\t\t\t\t\t\t( term ) => term.name === params.categoryId\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\tif ( !! currentCategory ) {\n\t\t\t\t\t\t\t\tcurrentCategoryId =\n\t\t\t\t\t\t\t\t\tcurrentCategory.id ||\n\t\t\t\t\t\t\t\t\t( await findOrCreateTerm(\n\t\t\t\t\t\t\t\t\t\tcurrentCategory.label\n\t\t\t\t\t\t\t\t\t) );\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\tconst pattern = await createPatternFromFile(\n\t\t\t\t\t\t\tfile,\n\t\t\t\t\t\t\tcurrentCategoryId\n\t\t\t\t\t\t\t\t? [ currentCategoryId ]\n\t\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t\t);\n\n\t\t\t\t\t\t// Navigate to the All patterns category for the newly created pattern\n\t\t\t\t\t\t// if we're not on that page already and if we're not in the `my-patterns`\n\t\t\t\t\t\t// category.\n\t\t\t\t\t\tif (\n\t\t\t\t\t\t\t! currentCategoryId &&\n\t\t\t\t\t\t\tparams.categoryId !== 'my-patterns'\n\t\t\t\t\t\t) {\n\t\t\t\t\t\t\thistory.push( {\n\t\t\t\t\t\t\t\tpath: `/patterns`,\n\t\t\t\t\t\t\t\tcategoryType: PATTERN_TYPES.theme,\n\t\t\t\t\t\t\t\tcategoryId: PATTERN_DEFAULT_CATEGORY,\n\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tcreateSuccessNotice(\n\t\t\t\t\t\t\tsprintf(\n\t\t\t\t\t\t\t\t// translators: %s: The imported pattern's title.\n\t\t\t\t\t\t\t\t__( 'Imported \"%s\" from JSON.' ),\n\t\t\t\t\t\t\t\tpattern.title.raw\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t\t\t\t\tid: 'import-pattern-success',\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t);\n\t\t\t\t\t} catch ( err ) {\n\t\t\t\t\t\tcreateErrorNotice( err.message, {\n\t\t\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t\t\t\tid: 'import-pattern-error',\n\t\t\t\t\t\t} );\n\t\t\t\t\t} finally {\n\t\t\t\t\t\tevent.target.value = '';\n\t\t\t\t\t}\n\t\t\t\t} }\n\t\t\t/>\n\t\t</>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
package/build-module/components/add-new-template/add-custom-generic-template-modal-content.js
CHANGED
|
@@ -37,6 +37,7 @@ function AddCustomGenericTemplateModalContent({
|
|
|
37
37
|
}, createElement(VStack, {
|
|
38
38
|
spacing: 6
|
|
39
39
|
}, createElement(TextControl, {
|
|
40
|
+
__next40pxDefaultSize: true,
|
|
40
41
|
__nextHasNoMarginBottom: true,
|
|
41
42
|
label: __('Name'),
|
|
42
43
|
value: title,
|
|
@@ -48,11 +49,13 @@ function AddCustomGenericTemplateModalContent({
|
|
|
48
49
|
className: "edit-site-custom-generic-template__modal-actions",
|
|
49
50
|
justify: "right"
|
|
50
51
|
}, createElement(Button, {
|
|
52
|
+
__next40pxDefaultSize: true,
|
|
51
53
|
variant: "tertiary",
|
|
52
54
|
onClick: () => {
|
|
53
55
|
onClose();
|
|
54
56
|
}
|
|
55
57
|
}, __('Cancel')), createElement(Button, {
|
|
58
|
+
__next40pxDefaultSize: true,
|
|
56
59
|
variant: "primary",
|
|
57
60
|
type: "submit",
|
|
58
61
|
isBusy: isBusy,
|
package/build-module/components/add-new-template/add-custom-generic-template-modal-content.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["paramCase","kebabCase","useState","__","Button","TextControl","__experimentalHStack","HStack","__experimentalVStack","VStack","AddCustomGenericTemplateModalContent","onClose","createTemplate","title","setTitle","defaultTitle","isBusy","setIsBusy","onCreateTemplate","event","preventDefault","slug","createElement","onSubmit","spacing","__nextHasNoMarginBottom","label","value","onChange","placeholder","disabled","help","className","justify","variant","onClick","type"],"sources":["@wordpress/edit-site/src/components/add-new-template/add-custom-generic-template-modal-content.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport { paramCase as kebabCase } from 'change-case';\n\n/**\n * WordPress dependencies\n */\nimport { useState } from '@wordpress/element';\nimport { __ } from '@wordpress/i18n';\nimport {\n\tButton,\n\tTextControl,\n\t__experimentalHStack as HStack,\n\t__experimentalVStack as VStack,\n} from '@wordpress/components';\n\nfunction AddCustomGenericTemplateModalContent( { onClose, createTemplate } ) {\n\tconst [ title, setTitle ] = useState( '' );\n\tconst defaultTitle = __( 'Custom Template' );\n\tconst [ isBusy, setIsBusy ] = useState( false );\n\tasync function onCreateTemplate( event ) {\n\t\tevent.preventDefault();\n\t\tif ( isBusy ) {\n\t\t\treturn;\n\t\t}\n\t\tsetIsBusy( true );\n\t\ttry {\n\t\t\tawait createTemplate(\n\t\t\t\t{\n\t\t\t\t\tslug:\n\t\t\t\t\t\t'wp-custom-template-' +\n\t\t\t\t\t\tkebabCase( title || defaultTitle ),\n\t\t\t\t\ttitle: title || defaultTitle,\n\t\t\t\t},\n\t\t\t\tfalse\n\t\t\t);\n\t\t} finally {\n\t\t\tsetIsBusy( false );\n\t\t}\n\t}\n\treturn (\n\t\t<form onSubmit={ onCreateTemplate }>\n\t\t\t<VStack spacing={ 6 }>\n\t\t\t\t<TextControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Name' ) }\n\t\t\t\t\tvalue={ title }\n\t\t\t\t\tonChange={ setTitle }\n\t\t\t\t\tplaceholder={ defaultTitle }\n\t\t\t\t\tdisabled={ isBusy }\n\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t'Describe the template, e.g. \"Post with sidebar\". A custom template can be manually applied to any post or page.'\n\t\t\t\t\t) }\n\t\t\t\t/>\n\t\t\t\t<HStack\n\t\t\t\t\tclassName=\"edit-site-custom-generic-template__modal-actions\"\n\t\t\t\t\tjustify=\"right\"\n\t\t\t\t>\n\t\t\t\t\t<Button\n\t\t\t\t\t\tvariant=\"tertiary\"\n\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\tonClose();\n\t\t\t\t\t\t} }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Cancel' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t\t<Button\n\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\ttype=\"submit\"\n\t\t\t\t\t\tisBusy={ isBusy }\n\t\t\t\t\t\taria-disabled={ isBusy }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Create' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t</HStack>\n\t\t\t</VStack>\n\t\t</form>\n\t);\n}\n\nexport default AddCustomGenericTemplateModalContent;\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,SAAS,IAAIC,SAAS,QAAQ,aAAa;;AAEpD;AACA;AACA;AACA,SAASC,QAAQ,QAAQ,oBAAoB;AAC7C,SAASC,EAAE,QAAQ,iBAAiB;AACpC,SACCC,MAAM,EACNC,WAAW,EACXC,oBAAoB,IAAIC,MAAM,EAC9BC,oBAAoB,IAAIC,MAAM,QACxB,uBAAuB;AAE9B,SAASC,oCAAoCA,CAAE;EAAEC,OAAO;EAAEC;AAAe,CAAC,EAAG;EAC5E,MAAM,CAAEC,KAAK,EAAEC,QAAQ,CAAE,GAAGZ,QAAQ,CAAE,EAAG,CAAC;EAC1C,MAAMa,YAAY,GAAGZ,EAAE,CAAE,iBAAkB,CAAC;EAC5C,MAAM,CAAEa,MAAM,EAAEC,SAAS,CAAE,GAAGf,QAAQ,CAAE,KAAM,CAAC;EAC/C,eAAegB,gBAAgBA,CAAEC,KAAK,EAAG;IACxCA,KAAK,CAACC,cAAc,CAAC,CAAC;IACtB,IAAKJ,MAAM,EAAG;MACb;IACD;IACAC,SAAS,CAAE,IAAK,CAAC;IACjB,IAAI;MACH,MAAML,cAAc,CACnB;QACCS,IAAI,EACH,qBAAqB,GACrBpB,SAAS,CAAEY,KAAK,IAAIE,YAAa,CAAC;QACnCF,KAAK,EAAEA,KAAK,IAAIE;MACjB,CAAC,EACD,KACD,CAAC;IACF,CAAC,SAAS;MACTE,SAAS,CAAE,KAAM,CAAC;IACnB;EACD;EACA,OACCK,aAAA;IAAMC,QAAQ,EAAGL;EAAkB,GAClCI,aAAA,CAACb,MAAM;IAACe,OAAO,EAAG;EAAG,GACpBF,aAAA,CAACjB,WAAW;IACXoB,uBAAuB;IACvBC,KAAK,
|
|
1
|
+
{"version":3,"names":["paramCase","kebabCase","useState","__","Button","TextControl","__experimentalHStack","HStack","__experimentalVStack","VStack","AddCustomGenericTemplateModalContent","onClose","createTemplate","title","setTitle","defaultTitle","isBusy","setIsBusy","onCreateTemplate","event","preventDefault","slug","createElement","onSubmit","spacing","__next40pxDefaultSize","__nextHasNoMarginBottom","label","value","onChange","placeholder","disabled","help","className","justify","variant","onClick","type"],"sources":["@wordpress/edit-site/src/components/add-new-template/add-custom-generic-template-modal-content.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport { paramCase as kebabCase } from 'change-case';\n\n/**\n * WordPress dependencies\n */\nimport { useState } from '@wordpress/element';\nimport { __ } from '@wordpress/i18n';\nimport {\n\tButton,\n\tTextControl,\n\t__experimentalHStack as HStack,\n\t__experimentalVStack as VStack,\n} from '@wordpress/components';\n\nfunction AddCustomGenericTemplateModalContent( { onClose, createTemplate } ) {\n\tconst [ title, setTitle ] = useState( '' );\n\tconst defaultTitle = __( 'Custom Template' );\n\tconst [ isBusy, setIsBusy ] = useState( false );\n\tasync function onCreateTemplate( event ) {\n\t\tevent.preventDefault();\n\t\tif ( isBusy ) {\n\t\t\treturn;\n\t\t}\n\t\tsetIsBusy( true );\n\t\ttry {\n\t\t\tawait createTemplate(\n\t\t\t\t{\n\t\t\t\t\tslug:\n\t\t\t\t\t\t'wp-custom-template-' +\n\t\t\t\t\t\tkebabCase( title || defaultTitle ),\n\t\t\t\t\ttitle: title || defaultTitle,\n\t\t\t\t},\n\t\t\t\tfalse\n\t\t\t);\n\t\t} finally {\n\t\t\tsetIsBusy( false );\n\t\t}\n\t}\n\treturn (\n\t\t<form onSubmit={ onCreateTemplate }>\n\t\t\t<VStack spacing={ 6 }>\n\t\t\t\t<TextControl\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Name' ) }\n\t\t\t\t\tvalue={ title }\n\t\t\t\t\tonChange={ setTitle }\n\t\t\t\t\tplaceholder={ defaultTitle }\n\t\t\t\t\tdisabled={ isBusy }\n\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t'Describe the template, e.g. \"Post with sidebar\". A custom template can be manually applied to any post or page.'\n\t\t\t\t\t) }\n\t\t\t\t/>\n\t\t\t\t<HStack\n\t\t\t\t\tclassName=\"edit-site-custom-generic-template__modal-actions\"\n\t\t\t\t\tjustify=\"right\"\n\t\t\t\t>\n\t\t\t\t\t<Button\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\tvariant=\"tertiary\"\n\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\tonClose();\n\t\t\t\t\t\t} }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Cancel' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t\t<Button\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\ttype=\"submit\"\n\t\t\t\t\t\tisBusy={ isBusy }\n\t\t\t\t\t\taria-disabled={ isBusy }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Create' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t</HStack>\n\t\t\t</VStack>\n\t\t</form>\n\t);\n}\n\nexport default AddCustomGenericTemplateModalContent;\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,SAAS,IAAIC,SAAS,QAAQ,aAAa;;AAEpD;AACA;AACA;AACA,SAASC,QAAQ,QAAQ,oBAAoB;AAC7C,SAASC,EAAE,QAAQ,iBAAiB;AACpC,SACCC,MAAM,EACNC,WAAW,EACXC,oBAAoB,IAAIC,MAAM,EAC9BC,oBAAoB,IAAIC,MAAM,QACxB,uBAAuB;AAE9B,SAASC,oCAAoCA,CAAE;EAAEC,OAAO;EAAEC;AAAe,CAAC,EAAG;EAC5E,MAAM,CAAEC,KAAK,EAAEC,QAAQ,CAAE,GAAGZ,QAAQ,CAAE,EAAG,CAAC;EAC1C,MAAMa,YAAY,GAAGZ,EAAE,CAAE,iBAAkB,CAAC;EAC5C,MAAM,CAAEa,MAAM,EAAEC,SAAS,CAAE,GAAGf,QAAQ,CAAE,KAAM,CAAC;EAC/C,eAAegB,gBAAgBA,CAAEC,KAAK,EAAG;IACxCA,KAAK,CAACC,cAAc,CAAC,CAAC;IACtB,IAAKJ,MAAM,EAAG;MACb;IACD;IACAC,SAAS,CAAE,IAAK,CAAC;IACjB,IAAI;MACH,MAAML,cAAc,CACnB;QACCS,IAAI,EACH,qBAAqB,GACrBpB,SAAS,CAAEY,KAAK,IAAIE,YAAa,CAAC;QACnCF,KAAK,EAAEA,KAAK,IAAIE;MACjB,CAAC,EACD,KACD,CAAC;IACF,CAAC,SAAS;MACTE,SAAS,CAAE,KAAM,CAAC;IACnB;EACD;EACA,OACCK,aAAA;IAAMC,QAAQ,EAAGL;EAAkB,GAClCI,aAAA,CAACb,MAAM;IAACe,OAAO,EAAG;EAAG,GACpBF,aAAA,CAACjB,WAAW;IACXoB,qBAAqB;IACrBC,uBAAuB;IACvBC,KAAK,EAAGxB,EAAE,CAAE,MAAO,CAAG;IACtByB,KAAK,EAAGf,KAAO;IACfgB,QAAQ,EAAGf,QAAU;IACrBgB,WAAW,EAAGf,YAAc;IAC5BgB,QAAQ,EAAGf,MAAQ;IACnBgB,IAAI,EAAG7B,EAAE,CACR,iHACD;EAAG,CACH,CAAC,EACFmB,aAAA,CAACf,MAAM;IACN0B,SAAS,EAAC,kDAAkD;IAC5DC,OAAO,EAAC;EAAO,GAEfZ,aAAA,CAAClB,MAAM;IACNqB,qBAAqB;IACrBU,OAAO,EAAC,UAAU;IAClBC,OAAO,EAAGA,CAAA,KAAM;MACfzB,OAAO,CAAC,CAAC;IACV;EAAG,GAEDR,EAAE,CAAE,QAAS,CACR,CAAC,EACTmB,aAAA,CAAClB,MAAM;IACNqB,qBAAqB;IACrBU,OAAO,EAAC,SAAS;IACjBE,IAAI,EAAC,QAAQ;IACbrB,MAAM,EAAGA,MAAQ;IACjB,iBAAgBA;EAAQ,GAEtBb,EAAE,CAAE,QAAS,CACR,CACD,CACD,CACH,CAAC;AAET;AAEA,eAAeO,oCAAoC","ignoreList":[]}
|
|
@@ -66,7 +66,9 @@ function useSearchSuggestions(entityForSuggestions, search) {
|
|
|
66
66
|
} = useEntityRecords(entityForSuggestions.type, entityForSuggestions.slug, query);
|
|
67
67
|
const [suggestions, setSuggestions] = useState(EMPTY_ARRAY);
|
|
68
68
|
useEffect(() => {
|
|
69
|
-
if (!searchHasResolved)
|
|
69
|
+
if (!searchHasResolved) {
|
|
70
|
+
return;
|
|
71
|
+
}
|
|
70
72
|
let newSuggestions = EMPTY_ARRAY;
|
|
71
73
|
if (searchResults?.length) {
|
|
72
74
|
newSuggestions = searchResults;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useState","useMemo","useEffect","__","Button","Flex","FlexItem","SearchControl","TextHighlight","privateApis","componentsPrivateApis","__experimentalText","Text","__experimentalVStack","VStack","useEntityRecords","decodeEntities","useDebouncedInput","unlock","mapToIHasNameAndId","CompositeV2","Composite","CompositeItemV2","CompositeItem","useCompositeStoreV2","useCompositeStore","EMPTY_ARRAY","SuggestionListItem","suggestion","search","onSelect","entityForSuggestions","baseCssClass","createElement","render","role","className","onClick","config","getSpecificTemplate","size","lineHeight","weight","text","name","highlight","link","useSearchSuggestions","query","order","context","per_page","queryArgs","records","searchResults","hasResolved","searchHasResolved","type","slug","suggestions","setSuggestions","newSuggestions","length","recordNamePath","SuggestionList","composite","orientation","setSearch","debouncedSearch","labels","showSearchControl","setShowSearchControl","Fragment","__nextHasNoMarginBottom","onChange","value","label","search_items","placeholder","store","map","key","as","not_found","AddCustomTemplateModalContent","showSearchEntities","setShowSearchEntities","hasGeneralTemplate","spacing","alignment","gap","align","isBlock","title","description","templatePrefix","template","all_items","singular_name"],"sources":["@wordpress/edit-site/src/components/add-new-template/add-custom-template-modal-content.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useState, useMemo, useEffect } from '@wordpress/element';\nimport { __ } from '@wordpress/i18n';\nimport {\n\tButton,\n\tFlex,\n\tFlexItem,\n\tSearchControl,\n\tTextHighlight,\n\tprivateApis as componentsPrivateApis,\n\t__experimentalText as Text,\n\t__experimentalVStack as VStack,\n} from '@wordpress/components';\nimport { useEntityRecords } from '@wordpress/core-data';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { useDebouncedInput } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../lock-unlock';\nimport { mapToIHasNameAndId } from './utils';\n\nconst {\n\tCompositeV2: Composite,\n\tCompositeItemV2: CompositeItem,\n\tuseCompositeStoreV2: useCompositeStore,\n} = unlock( componentsPrivateApis );\n\nconst EMPTY_ARRAY = [];\n\nfunction SuggestionListItem( {\n\tsuggestion,\n\tsearch,\n\tonSelect,\n\tentityForSuggestions,\n} ) {\n\tconst baseCssClass =\n\t\t'edit-site-custom-template-modal__suggestions_list__list-item';\n\treturn (\n\t\t<CompositeItem\n\t\t\trender={\n\t\t\t\t<Button\n\t\t\t\t\trole=\"option\"\n\t\t\t\t\tclassName={ baseCssClass }\n\t\t\t\t\tonClick={ () =>\n\t\t\t\t\t\tonSelect(\n\t\t\t\t\t\t\tentityForSuggestions.config.getSpecificTemplate(\n\t\t\t\t\t\t\t\tsuggestion\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t)\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t}\n\t\t>\n\t\t\t<Text\n\t\t\t\tsize=\"body\"\n\t\t\t\tlineHeight={ 1.53846153846 } // 20px\n\t\t\t\tweight={ 500 }\n\t\t\t\tclassName={ `${ baseCssClass }__title` }\n\t\t\t>\n\t\t\t\t<TextHighlight\n\t\t\t\t\ttext={ decodeEntities( suggestion.name ) }\n\t\t\t\t\thighlight={ search }\n\t\t\t\t/>\n\t\t\t</Text>\n\t\t\t{ suggestion.link && (\n\t\t\t\t<Text\n\t\t\t\t\tsize=\"body\"\n\t\t\t\t\tlineHeight={ 1.53846153846 } // 20px\n\t\t\t\t\tclassName={ `${ baseCssClass }__info` }\n\t\t\t\t>\n\t\t\t\t\t{ suggestion.link }\n\t\t\t\t</Text>\n\t\t\t) }\n\t\t</CompositeItem>\n\t);\n}\n\nfunction useSearchSuggestions( entityForSuggestions, search ) {\n\tconst { config } = entityForSuggestions;\n\tconst query = useMemo(\n\t\t() => ( {\n\t\t\torder: 'asc',\n\t\t\tcontext: 'view',\n\t\t\tsearch,\n\t\t\tper_page: search ? 20 : 10,\n\t\t\t...config.queryArgs( search ),\n\t\t} ),\n\t\t[ search, config ]\n\t);\n\tconst { records: searchResults, hasResolved: searchHasResolved } =\n\t\tuseEntityRecords(\n\t\t\tentityForSuggestions.type,\n\t\t\tentityForSuggestions.slug,\n\t\t\tquery\n\t\t);\n\tconst [ suggestions, setSuggestions ] = useState( EMPTY_ARRAY );\n\tuseEffect( () => {\n\t\tif ( ! searchHasResolved ) return;\n\t\tlet newSuggestions = EMPTY_ARRAY;\n\t\tif ( searchResults?.length ) {\n\t\t\tnewSuggestions = searchResults;\n\t\t\tif ( config.recordNamePath ) {\n\t\t\t\tnewSuggestions = mapToIHasNameAndId(\n\t\t\t\t\tnewSuggestions,\n\t\t\t\t\tconfig.recordNamePath\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\t\t// Update suggestions only when the query has resolved, so as to keep\n\t\t// the previous results in the UI.\n\t\tsetSuggestions( newSuggestions );\n\t}, [ searchResults, searchHasResolved ] );\n\treturn suggestions;\n}\n\nfunction SuggestionList( { entityForSuggestions, onSelect } ) {\n\tconst composite = useCompositeStore( { orientation: 'vertical' } );\n\tconst [ search, setSearch, debouncedSearch ] = useDebouncedInput();\n\tconst suggestions = useSearchSuggestions(\n\t\tentityForSuggestions,\n\t\tdebouncedSearch\n\t);\n\tconst { labels } = entityForSuggestions;\n\tconst [ showSearchControl, setShowSearchControl ] = useState( false );\n\tif ( ! showSearchControl && suggestions?.length > 9 ) {\n\t\tsetShowSearchControl( true );\n\t}\n\treturn (\n\t\t<>\n\t\t\t{ showSearchControl && (\n\t\t\t\t<SearchControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tonChange={ setSearch }\n\t\t\t\t\tvalue={ search }\n\t\t\t\t\tlabel={ labels.search_items }\n\t\t\t\t\tplaceholder={ labels.search_items }\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t{ !! suggestions?.length && (\n\t\t\t\t<Composite\n\t\t\t\t\tstore={ composite }\n\t\t\t\t\trole=\"listbox\"\n\t\t\t\t\tclassName=\"edit-site-custom-template-modal__suggestions_list\"\n\t\t\t\t\taria-label={ __( 'Suggestions list' ) }\n\t\t\t\t>\n\t\t\t\t\t{ suggestions.map( ( suggestion ) => (\n\t\t\t\t\t\t<SuggestionListItem\n\t\t\t\t\t\t\tkey={ suggestion.slug }\n\t\t\t\t\t\t\tsuggestion={ suggestion }\n\t\t\t\t\t\t\tsearch={ debouncedSearch }\n\t\t\t\t\t\t\tonSelect={ onSelect }\n\t\t\t\t\t\t\tentityForSuggestions={ entityForSuggestions }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) ) }\n\t\t\t\t</Composite>\n\t\t\t) }\n\t\t\t{ debouncedSearch && ! suggestions?.length && (\n\t\t\t\t<Text\n\t\t\t\t\tas=\"p\"\n\t\t\t\t\tclassName=\"edit-site-custom-template-modal__no-results\"\n\t\t\t\t>\n\t\t\t\t\t{ labels.not_found }\n\t\t\t\t</Text>\n\t\t\t) }\n\t\t</>\n\t);\n}\n\nfunction AddCustomTemplateModalContent( { onSelect, entityForSuggestions } ) {\n\tconst [ showSearchEntities, setShowSearchEntities ] = useState(\n\t\tentityForSuggestions.hasGeneralTemplate\n\t);\n\treturn (\n\t\t<VStack\n\t\t\tspacing={ 4 }\n\t\t\tclassName=\"edit-site-custom-template-modal__contents-wrapper\"\n\t\t\talignment=\"left\"\n\t\t>\n\t\t\t{ ! showSearchEntities && (\n\t\t\t\t<>\n\t\t\t\t\t<Text as=\"p\">\n\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t'Select whether to create a single template for all items or a specific one.'\n\t\t\t\t\t\t) }\n\t\t\t\t\t</Text>\n\t\t\t\t\t<Flex\n\t\t\t\t\t\tclassName=\"edit-site-custom-template-modal__contents\"\n\t\t\t\t\t\tgap=\"4\"\n\t\t\t\t\t\talign=\"initial\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<FlexItem\n\t\t\t\t\t\t\tisBlock\n\t\t\t\t\t\t\tas={ Button }\n\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\tconst {\n\t\t\t\t\t\t\t\t\tslug,\n\t\t\t\t\t\t\t\t\ttitle,\n\t\t\t\t\t\t\t\t\tdescription,\n\t\t\t\t\t\t\t\t\ttemplatePrefix,\n\t\t\t\t\t\t\t\t} = entityForSuggestions.template;\n\t\t\t\t\t\t\t\tonSelect( {\n\t\t\t\t\t\t\t\t\tslug,\n\t\t\t\t\t\t\t\t\ttitle,\n\t\t\t\t\t\t\t\t\tdescription,\n\t\t\t\t\t\t\t\t\ttemplatePrefix,\n\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<Text\n\t\t\t\t\t\t\t\tas=\"span\"\n\t\t\t\t\t\t\t\tweight={ 500 }\n\t\t\t\t\t\t\t\tlineHeight={ 1.53846153846 } // 20px\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ entityForSuggestions.labels.all_items }\n\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t\t<Text\n\t\t\t\t\t\t\t\tas=\"span\"\n\t\t\t\t\t\t\t\tlineHeight={ 1.53846153846 } // 20px\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t// translators: The user is given the choice to set up a template for all items of a post type or taxonomy, or just a specific one.\n\t\t\t\t\t\t\t\t\t__( 'For all items' )\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t</FlexItem>\n\t\t\t\t\t\t<FlexItem\n\t\t\t\t\t\t\tisBlock\n\t\t\t\t\t\t\tas={ Button }\n\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\tsetShowSearchEntities( true );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<Text\n\t\t\t\t\t\t\t\tas=\"span\"\n\t\t\t\t\t\t\t\tweight={ 500 }\n\t\t\t\t\t\t\t\tlineHeight={ 1.53846153846 } // 20px\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ entityForSuggestions.labels.singular_name }\n\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t\t<Text\n\t\t\t\t\t\t\t\tas=\"span\"\n\t\t\t\t\t\t\t\tlineHeight={ 1.53846153846 } // 20px\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t// translators: The user is given the choice to set up a template for all items of a post type or taxonomy, or just a specific one.\n\t\t\t\t\t\t\t\t\t__( 'For a specific item' )\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t</FlexItem>\n\t\t\t\t\t</Flex>\n\t\t\t\t</>\n\t\t\t) }\n\t\t\t{ showSearchEntities && (\n\t\t\t\t<>\n\t\t\t\t\t<Text as=\"p\">\n\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t'This template will be used only for the specific item chosen.'\n\t\t\t\t\t\t) }\n\t\t\t\t\t</Text>\n\t\t\t\t\t<SuggestionList\n\t\t\t\t\t\tentityForSuggestions={ entityForSuggestions }\n\t\t\t\t\t\tonSelect={ onSelect }\n\t\t\t\t\t/>\n\t\t\t\t</>\n\t\t\t) }\n\t\t</VStack>\n\t);\n}\n\nexport default AddCustomTemplateModalContent;\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["useState","useMemo","useEffect","__","Button","Flex","FlexItem","SearchControl","TextHighlight","privateApis","componentsPrivateApis","__experimentalText","Text","__experimentalVStack","VStack","useEntityRecords","decodeEntities","useDebouncedInput","unlock","mapToIHasNameAndId","CompositeV2","Composite","CompositeItemV2","CompositeItem","useCompositeStoreV2","useCompositeStore","EMPTY_ARRAY","SuggestionListItem","suggestion","search","onSelect","entityForSuggestions","baseCssClass","createElement","render","role","className","onClick","config","getSpecificTemplate","size","lineHeight","weight","text","name","highlight","link","useSearchSuggestions","query","order","context","per_page","queryArgs","records","searchResults","hasResolved","searchHasResolved","type","slug","suggestions","setSuggestions","newSuggestions","length","recordNamePath","SuggestionList","composite","orientation","setSearch","debouncedSearch","labels","showSearchControl","setShowSearchControl","Fragment","__nextHasNoMarginBottom","onChange","value","label","search_items","placeholder","store","map","key","as","not_found","AddCustomTemplateModalContent","showSearchEntities","setShowSearchEntities","hasGeneralTemplate","spacing","alignment","gap","align","isBlock","title","description","templatePrefix","template","all_items","singular_name"],"sources":["@wordpress/edit-site/src/components/add-new-template/add-custom-template-modal-content.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useState, useMemo, useEffect } from '@wordpress/element';\nimport { __ } from '@wordpress/i18n';\nimport {\n\tButton,\n\tFlex,\n\tFlexItem,\n\tSearchControl,\n\tTextHighlight,\n\tprivateApis as componentsPrivateApis,\n\t__experimentalText as Text,\n\t__experimentalVStack as VStack,\n} from '@wordpress/components';\nimport { useEntityRecords } from '@wordpress/core-data';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { useDebouncedInput } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../lock-unlock';\nimport { mapToIHasNameAndId } from './utils';\n\nconst {\n\tCompositeV2: Composite,\n\tCompositeItemV2: CompositeItem,\n\tuseCompositeStoreV2: useCompositeStore,\n} = unlock( componentsPrivateApis );\n\nconst EMPTY_ARRAY = [];\n\nfunction SuggestionListItem( {\n\tsuggestion,\n\tsearch,\n\tonSelect,\n\tentityForSuggestions,\n} ) {\n\tconst baseCssClass =\n\t\t'edit-site-custom-template-modal__suggestions_list__list-item';\n\treturn (\n\t\t<CompositeItem\n\t\t\trender={\n\t\t\t\t<Button\n\t\t\t\t\trole=\"option\"\n\t\t\t\t\tclassName={ baseCssClass }\n\t\t\t\t\tonClick={ () =>\n\t\t\t\t\t\tonSelect(\n\t\t\t\t\t\t\tentityForSuggestions.config.getSpecificTemplate(\n\t\t\t\t\t\t\t\tsuggestion\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t)\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t}\n\t\t>\n\t\t\t<Text\n\t\t\t\tsize=\"body\"\n\t\t\t\tlineHeight={ 1.53846153846 } // 20px\n\t\t\t\tweight={ 500 }\n\t\t\t\tclassName={ `${ baseCssClass }__title` }\n\t\t\t>\n\t\t\t\t<TextHighlight\n\t\t\t\t\ttext={ decodeEntities( suggestion.name ) }\n\t\t\t\t\thighlight={ search }\n\t\t\t\t/>\n\t\t\t</Text>\n\t\t\t{ suggestion.link && (\n\t\t\t\t<Text\n\t\t\t\t\tsize=\"body\"\n\t\t\t\t\tlineHeight={ 1.53846153846 } // 20px\n\t\t\t\t\tclassName={ `${ baseCssClass }__info` }\n\t\t\t\t>\n\t\t\t\t\t{ suggestion.link }\n\t\t\t\t</Text>\n\t\t\t) }\n\t\t</CompositeItem>\n\t);\n}\n\nfunction useSearchSuggestions( entityForSuggestions, search ) {\n\tconst { config } = entityForSuggestions;\n\tconst query = useMemo(\n\t\t() => ( {\n\t\t\torder: 'asc',\n\t\t\tcontext: 'view',\n\t\t\tsearch,\n\t\t\tper_page: search ? 20 : 10,\n\t\t\t...config.queryArgs( search ),\n\t\t} ),\n\t\t[ search, config ]\n\t);\n\tconst { records: searchResults, hasResolved: searchHasResolved } =\n\t\tuseEntityRecords(\n\t\t\tentityForSuggestions.type,\n\t\t\tentityForSuggestions.slug,\n\t\t\tquery\n\t\t);\n\tconst [ suggestions, setSuggestions ] = useState( EMPTY_ARRAY );\n\tuseEffect( () => {\n\t\tif ( ! searchHasResolved ) {\n\t\t\treturn;\n\t\t}\n\t\tlet newSuggestions = EMPTY_ARRAY;\n\t\tif ( searchResults?.length ) {\n\t\t\tnewSuggestions = searchResults;\n\t\t\tif ( config.recordNamePath ) {\n\t\t\t\tnewSuggestions = mapToIHasNameAndId(\n\t\t\t\t\tnewSuggestions,\n\t\t\t\t\tconfig.recordNamePath\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\t\t// Update suggestions only when the query has resolved, so as to keep\n\t\t// the previous results in the UI.\n\t\tsetSuggestions( newSuggestions );\n\t}, [ searchResults, searchHasResolved ] );\n\treturn suggestions;\n}\n\nfunction SuggestionList( { entityForSuggestions, onSelect } ) {\n\tconst composite = useCompositeStore( { orientation: 'vertical' } );\n\tconst [ search, setSearch, debouncedSearch ] = useDebouncedInput();\n\tconst suggestions = useSearchSuggestions(\n\t\tentityForSuggestions,\n\t\tdebouncedSearch\n\t);\n\tconst { labels } = entityForSuggestions;\n\tconst [ showSearchControl, setShowSearchControl ] = useState( false );\n\tif ( ! showSearchControl && suggestions?.length > 9 ) {\n\t\tsetShowSearchControl( true );\n\t}\n\treturn (\n\t\t<>\n\t\t\t{ showSearchControl && (\n\t\t\t\t<SearchControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tonChange={ setSearch }\n\t\t\t\t\tvalue={ search }\n\t\t\t\t\tlabel={ labels.search_items }\n\t\t\t\t\tplaceholder={ labels.search_items }\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t{ !! suggestions?.length && (\n\t\t\t\t<Composite\n\t\t\t\t\tstore={ composite }\n\t\t\t\t\trole=\"listbox\"\n\t\t\t\t\tclassName=\"edit-site-custom-template-modal__suggestions_list\"\n\t\t\t\t\taria-label={ __( 'Suggestions list' ) }\n\t\t\t\t>\n\t\t\t\t\t{ suggestions.map( ( suggestion ) => (\n\t\t\t\t\t\t<SuggestionListItem\n\t\t\t\t\t\t\tkey={ suggestion.slug }\n\t\t\t\t\t\t\tsuggestion={ suggestion }\n\t\t\t\t\t\t\tsearch={ debouncedSearch }\n\t\t\t\t\t\t\tonSelect={ onSelect }\n\t\t\t\t\t\t\tentityForSuggestions={ entityForSuggestions }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) ) }\n\t\t\t\t</Composite>\n\t\t\t) }\n\t\t\t{ debouncedSearch && ! suggestions?.length && (\n\t\t\t\t<Text\n\t\t\t\t\tas=\"p\"\n\t\t\t\t\tclassName=\"edit-site-custom-template-modal__no-results\"\n\t\t\t\t>\n\t\t\t\t\t{ labels.not_found }\n\t\t\t\t</Text>\n\t\t\t) }\n\t\t</>\n\t);\n}\n\nfunction AddCustomTemplateModalContent( { onSelect, entityForSuggestions } ) {\n\tconst [ showSearchEntities, setShowSearchEntities ] = useState(\n\t\tentityForSuggestions.hasGeneralTemplate\n\t);\n\treturn (\n\t\t<VStack\n\t\t\tspacing={ 4 }\n\t\t\tclassName=\"edit-site-custom-template-modal__contents-wrapper\"\n\t\t\talignment=\"left\"\n\t\t>\n\t\t\t{ ! showSearchEntities && (\n\t\t\t\t<>\n\t\t\t\t\t<Text as=\"p\">\n\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t'Select whether to create a single template for all items or a specific one.'\n\t\t\t\t\t\t) }\n\t\t\t\t\t</Text>\n\t\t\t\t\t<Flex\n\t\t\t\t\t\tclassName=\"edit-site-custom-template-modal__contents\"\n\t\t\t\t\t\tgap=\"4\"\n\t\t\t\t\t\talign=\"initial\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<FlexItem\n\t\t\t\t\t\t\tisBlock\n\t\t\t\t\t\t\tas={ Button }\n\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\tconst {\n\t\t\t\t\t\t\t\t\tslug,\n\t\t\t\t\t\t\t\t\ttitle,\n\t\t\t\t\t\t\t\t\tdescription,\n\t\t\t\t\t\t\t\t\ttemplatePrefix,\n\t\t\t\t\t\t\t\t} = entityForSuggestions.template;\n\t\t\t\t\t\t\t\tonSelect( {\n\t\t\t\t\t\t\t\t\tslug,\n\t\t\t\t\t\t\t\t\ttitle,\n\t\t\t\t\t\t\t\t\tdescription,\n\t\t\t\t\t\t\t\t\ttemplatePrefix,\n\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<Text\n\t\t\t\t\t\t\t\tas=\"span\"\n\t\t\t\t\t\t\t\tweight={ 500 }\n\t\t\t\t\t\t\t\tlineHeight={ 1.53846153846 } // 20px\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ entityForSuggestions.labels.all_items }\n\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t\t<Text\n\t\t\t\t\t\t\t\tas=\"span\"\n\t\t\t\t\t\t\t\tlineHeight={ 1.53846153846 } // 20px\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t// translators: The user is given the choice to set up a template for all items of a post type or taxonomy, or just a specific one.\n\t\t\t\t\t\t\t\t\t__( 'For all items' )\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t</FlexItem>\n\t\t\t\t\t\t<FlexItem\n\t\t\t\t\t\t\tisBlock\n\t\t\t\t\t\t\tas={ Button }\n\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\tsetShowSearchEntities( true );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<Text\n\t\t\t\t\t\t\t\tas=\"span\"\n\t\t\t\t\t\t\t\tweight={ 500 }\n\t\t\t\t\t\t\t\tlineHeight={ 1.53846153846 } // 20px\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ entityForSuggestions.labels.singular_name }\n\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t\t<Text\n\t\t\t\t\t\t\t\tas=\"span\"\n\t\t\t\t\t\t\t\tlineHeight={ 1.53846153846 } // 20px\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t// translators: The user is given the choice to set up a template for all items of a post type or taxonomy, or just a specific one.\n\t\t\t\t\t\t\t\t\t__( 'For a specific item' )\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t</FlexItem>\n\t\t\t\t\t</Flex>\n\t\t\t\t</>\n\t\t\t) }\n\t\t\t{ showSearchEntities && (\n\t\t\t\t<>\n\t\t\t\t\t<Text as=\"p\">\n\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t'This template will be used only for the specific item chosen.'\n\t\t\t\t\t\t) }\n\t\t\t\t\t</Text>\n\t\t\t\t\t<SuggestionList\n\t\t\t\t\t\tentityForSuggestions={ entityForSuggestions }\n\t\t\t\t\t\tonSelect={ onSelect }\n\t\t\t\t\t/>\n\t\t\t\t</>\n\t\t\t) }\n\t\t</VStack>\n\t);\n}\n\nexport default AddCustomTemplateModalContent;\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -2,7 +2,7 @@ import { createElement, Fragment } from "react";
|
|
|
2
2
|
/**
|
|
3
3
|
* External dependencies
|
|
4
4
|
*/
|
|
5
|
-
import
|
|
5
|
+
import clsx from 'clsx';
|
|
6
6
|
|
|
7
7
|
/**
|
|
8
8
|
* WordPress dependencies
|
|
@@ -178,7 +178,7 @@ function NewTemplateModal({
|
|
|
178
178
|
}
|
|
179
179
|
return createElement(Modal, {
|
|
180
180
|
title: modalTitle,
|
|
181
|
-
className:
|
|
181
|
+
className: clsx('edit-site-add-new-template__modal', {
|
|
182
182
|
'edit-site-add-new-template__modal_template_list': modalContent === modalContentMap.templatesList,
|
|
183
183
|
'edit-site-custom-template-modal': modalContent === modalContentMap.customTemplate
|
|
184
184
|
}),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["classnames","Button","Modal","__experimentalGrid","Grid","__experimentalText","Text","__experimentalVStack","VStack","Flex","Icon","decodeEntities","useState","memo","useSelect","useDispatch","store","coreStore","archive","blockMeta","calendar","category","commentAuthorAvatar","edit","home","layout","list","media","notFound","page","pin","verse","search","tag","__","sprintf","noticesStore","privateApis","routerPrivateApis","TEMPLATE_POST_TYPE","AddCustomTemplateModalContent","useExistingTemplates","useDefaultTemplateTypes","useTaxonomiesMenuItems","usePostTypeMenuItems","useAuthorMenuItem","usePostTypeArchiveMenuItems","AddCustomGenericTemplateModalContent","unlock","useHistory","DEFAULT_TEMPLATE_SLUGS","TEMPLATE_ICONS","single","index","author","taxonomy","date","attachment","TemplateListItem","title","direction","className","description","icon","onClick","children","createElement","label","showTooltip","as","spacing","align","justify","style","width","alignment","weight","lineHeight","modalContentMap","templatesList","customTemplate","customGenericTemplate","NewTemplateModal","onClose","modalContent","setModalContent","entityForSuggestions","setEntityForSuggestions","isSubmitting","setIsSubmitting","missingTemplates","useMissingTemplates","history","saveEntityRecord","createErrorNotice","createSuccessNotice","homeUrl","select","getUnstableBase","TEMPLATE_SHORT_DESCRIPTIONS","Date","getFullYear","createTemplate","template","isWPSuggestion","slug","newTemplate","toString","status","is_wp_suggestion","throwOnError","push","postId","id","postType","canvas","rendered","type","error","errorMessage","message","code","onModalClose","modalTitle","labels","singular_name","onRequestClose","overlayClassName","undefined","columns","gap","map","key","onSelect","NewTemplate","showModal","setShowModal","getPostType","Fragment","variant","add_new_item","existingTemplates","defaultTemplateTypes","existingTemplateSlugs","missingDefaultTemplates","filter","includes","onClickMenuItem","_entityForSuggestions","enhancedMissingDefaultTemplateTypes","defaultTaxonomiesMenuItems","taxonomiesMenuItems","defaultPostTypesMenuItems","postTypesMenuItems","authorMenuItem","forEach","menuItem","matchIndex","findIndex","sort","template1","template2","indexOf"],"sources":["@wordpress/edit-site/src/components/add-new-template/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tButton,\n\tModal,\n\t__experimentalGrid as Grid,\n\t__experimentalText as Text,\n\t__experimentalVStack as VStack,\n\tFlex,\n\tIcon,\n} from '@wordpress/components';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { useState, memo } from '@wordpress/element';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport {\n\tarchive,\n\tblockMeta,\n\tcalendar,\n\tcategory,\n\tcommentAuthorAvatar,\n\tedit,\n\thome,\n\tlayout,\n\tlist,\n\tmedia,\n\tnotFound,\n\tpage,\n\tpin,\n\tverse,\n\tsearch,\n\ttag,\n} from '@wordpress/icons';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\n\n/**\n * Internal dependencies\n */\nimport { TEMPLATE_POST_TYPE } from '../../utils/constants';\n\n/**\n * Internal dependencies\n */\nimport AddCustomTemplateModalContent from './add-custom-template-modal-content';\nimport {\n\tuseExistingTemplates,\n\tuseDefaultTemplateTypes,\n\tuseTaxonomiesMenuItems,\n\tusePostTypeMenuItems,\n\tuseAuthorMenuItem,\n\tusePostTypeArchiveMenuItems,\n} from './utils';\nimport AddCustomGenericTemplateModalContent from './add-custom-generic-template-modal-content';\nimport { unlock } from '../../lock-unlock';\n\nconst { useHistory } = unlock( routerPrivateApis );\n\nconst DEFAULT_TEMPLATE_SLUGS = [\n\t'front-page',\n\t'home',\n\t'single',\n\t'page',\n\t'index',\n\t'archive',\n\t'author',\n\t'category',\n\t'date',\n\t'tag',\n\t'search',\n\t'404',\n];\n\nconst TEMPLATE_ICONS = {\n\t'front-page': home,\n\thome: verse,\n\tsingle: pin,\n\tpage,\n\tarchive,\n\tsearch,\n\t404: notFound,\n\tindex: list,\n\tcategory,\n\tauthor: commentAuthorAvatar,\n\ttaxonomy: blockMeta,\n\tdate: calendar,\n\ttag,\n\tattachment: media,\n};\n\nfunction TemplateListItem( {\n\ttitle,\n\tdirection,\n\tclassName,\n\tdescription,\n\ticon,\n\tonClick,\n\tchildren,\n} ) {\n\treturn (\n\t\t<Button\n\t\t\tclassName={ className }\n\t\t\tonClick={ onClick }\n\t\t\tlabel={ description }\n\t\t\tshowTooltip={ !! description }\n\t\t>\n\t\t\t<Flex\n\t\t\t\tas=\"span\"\n\t\t\t\tspacing={ 2 }\n\t\t\t\talign=\"center\"\n\t\t\t\tjustify=\"center\"\n\t\t\t\tstyle={ { width: '100%' } }\n\t\t\t\tdirection={ direction }\n\t\t\t>\n\t\t\t\t<div className=\"edit-site-add-new-template__template-icon\">\n\t\t\t\t\t<Icon icon={ icon } />\n\t\t\t\t</div>\n\t\t\t\t<VStack\n\t\t\t\t\tclassName=\"edit-site-add-new-template__template-name\"\n\t\t\t\t\talignment=\"center\"\n\t\t\t\t\tspacing={ 0 }\n\t\t\t\t>\n\t\t\t\t\t<Text\n\t\t\t\t\t\tweight={ 500 }\n\t\t\t\t\t\tlineHeight={ 1.53846153846 } // 20px\n\t\t\t\t\t>\n\t\t\t\t\t\t{ title }\n\t\t\t\t\t</Text>\n\t\t\t\t\t{ children }\n\t\t\t\t</VStack>\n\t\t\t</Flex>\n\t\t</Button>\n\t);\n}\n\nconst modalContentMap = {\n\ttemplatesList: 1,\n\tcustomTemplate: 2,\n\tcustomGenericTemplate: 3,\n};\n\nfunction NewTemplateModal( { onClose } ) {\n\tconst [ modalContent, setModalContent ] = useState(\n\t\tmodalContentMap.templatesList\n\t);\n\tconst [ entityForSuggestions, setEntityForSuggestions ] = useState( {} );\n\tconst [ isSubmitting, setIsSubmitting ] = useState( false );\n\tconst missingTemplates = useMissingTemplates( setEntityForSuggestions, () =>\n\t\tsetModalContent( modalContentMap.customTemplate )\n\t);\n\tconst history = useHistory();\n\tconst { saveEntityRecord } = useDispatch( coreStore );\n\tconst { createErrorNotice, createSuccessNotice } =\n\t\tuseDispatch( noticesStore );\n\n\tconst { homeUrl } = useSelect( ( select ) => {\n\t\tconst {\n\t\t\tgetUnstableBase, // Site index.\n\t\t} = select( coreStore );\n\n\t\treturn {\n\t\t\thomeUrl: getUnstableBase()?.home,\n\t\t};\n\t}, [] );\n\n\tconst TEMPLATE_SHORT_DESCRIPTIONS = {\n\t\t'front-page': homeUrl,\n\t\tdate: sprintf(\n\t\t\t// translators: %s: The homepage url.\n\t\t\t__( 'E.g. %s' ),\n\t\t\thomeUrl + '/' + new Date().getFullYear()\n\t\t),\n\t};\n\n\tasync function createTemplate( template, isWPSuggestion = true ) {\n\t\tif ( isSubmitting ) {\n\t\t\treturn;\n\t\t}\n\t\tsetIsSubmitting( true );\n\t\ttry {\n\t\t\tconst { title, description, slug } = template;\n\t\t\tconst newTemplate = await saveEntityRecord(\n\t\t\t\t'postType',\n\t\t\t\tTEMPLATE_POST_TYPE,\n\t\t\t\t{\n\t\t\t\t\tdescription,\n\t\t\t\t\t// Slugs need to be strings, so this is for template `404`\n\t\t\t\t\tslug: slug.toString(),\n\t\t\t\t\tstatus: 'publish',\n\t\t\t\t\ttitle,\n\t\t\t\t\t// This adds a post meta field in template that is part of `is_custom` value calculation.\n\t\t\t\t\tis_wp_suggestion: isWPSuggestion,\n\t\t\t\t},\n\t\t\t\t{ throwOnError: true }\n\t\t\t);\n\n\t\t\t// Navigate to the created template editor.\n\t\t\thistory.push( {\n\t\t\t\tpostId: newTemplate.id,\n\t\t\t\tpostType: TEMPLATE_POST_TYPE,\n\t\t\t\tcanvas: 'edit',\n\t\t\t} );\n\n\t\t\tcreateSuccessNotice(\n\t\t\t\tsprintf(\n\t\t\t\t\t// translators: %s: Title of the created template e.g: \"Category\".\n\t\t\t\t\t__( '\"%s\" successfully created.' ),\n\t\t\t\t\tdecodeEntities( newTemplate.title?.rendered || title )\n\t\t\t\t),\n\t\t\t\t{\n\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t}\n\t\t\t);\n\t\t} catch ( error ) {\n\t\t\tconst errorMessage =\n\t\t\t\terror.message && error.code !== 'unknown_error'\n\t\t\t\t\t? error.message\n\t\t\t\t\t: __( 'An error occurred while creating the template.' );\n\n\t\t\tcreateErrorNotice( errorMessage, {\n\t\t\t\ttype: 'snackbar',\n\t\t\t} );\n\t\t} finally {\n\t\t\tsetIsSubmitting( false );\n\t\t}\n\t}\n\tconst onModalClose = () => {\n\t\tonClose();\n\t\tsetModalContent( modalContentMap.templatesList );\n\t};\n\n\tlet modalTitle = __( 'Add template' );\n\tif ( modalContent === modalContentMap.customTemplate ) {\n\t\tmodalTitle = sprintf(\n\t\t\t// translators: %s: Name of the post type e.g: \"Post\".\n\t\t\t__( 'Add template: %s' ),\n\t\t\tentityForSuggestions.labels.singular_name\n\t\t);\n\t} else if ( modalContent === modalContentMap.customGenericTemplate ) {\n\t\tmodalTitle = __( 'Create custom template' );\n\t}\n\n\treturn (\n\t\t<Modal\n\t\t\ttitle={ modalTitle }\n\t\t\tclassName={ classnames( 'edit-site-add-new-template__modal', {\n\t\t\t\t'edit-site-add-new-template__modal_template_list':\n\t\t\t\t\tmodalContent === modalContentMap.templatesList,\n\t\t\t\t'edit-site-custom-template-modal':\n\t\t\t\t\tmodalContent === modalContentMap.customTemplate,\n\t\t\t} ) }\n\t\t\tonRequestClose={ onModalClose }\n\t\t\toverlayClassName={\n\t\t\t\tmodalContent === modalContentMap.customGenericTemplate\n\t\t\t\t\t? 'edit-site-custom-generic-template__modal'\n\t\t\t\t\t: undefined\n\t\t\t}\n\t\t>\n\t\t\t{ modalContent === modalContentMap.templatesList && (\n\t\t\t\t<Grid\n\t\t\t\t\tcolumns={ 3 }\n\t\t\t\t\tgap={ 4 }\n\t\t\t\t\talign=\"flex-start\"\n\t\t\t\t\tjustify=\"center\"\n\t\t\t\t\tclassName=\"edit-site-add-new-template__template-list__contents\"\n\t\t\t\t>\n\t\t\t\t\t<Flex className=\"edit-site-add-new-template__template-list__prompt\">\n\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t'Select what the new template should apply to:'\n\t\t\t\t\t\t) }\n\t\t\t\t\t</Flex>\n\t\t\t\t\t{ missingTemplates.map( ( template ) => {\n\t\t\t\t\t\tconst { title, slug, onClick } = template;\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t<TemplateListItem\n\t\t\t\t\t\t\t\tkey={ slug }\n\t\t\t\t\t\t\t\ttitle={ title }\n\t\t\t\t\t\t\t\tdirection=\"column\"\n\t\t\t\t\t\t\t\tclassName=\"edit-site-add-new-template__template-button\"\n\t\t\t\t\t\t\t\tdescription={\n\t\t\t\t\t\t\t\t\tTEMPLATE_SHORT_DESCRIPTIONS[ slug ]\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\ticon={ TEMPLATE_ICONS[ slug ] || layout }\n\t\t\t\t\t\t\t\tonClick={ () =>\n\t\t\t\t\t\t\t\t\tonClick\n\t\t\t\t\t\t\t\t\t\t? onClick( template )\n\t\t\t\t\t\t\t\t\t\t: createTemplate( template )\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t);\n\t\t\t\t\t} ) }\n\t\t\t\t\t<TemplateListItem\n\t\t\t\t\t\ttitle={ __( 'Custom template' ) }\n\t\t\t\t\t\tdirection=\"row\"\n\t\t\t\t\t\tclassName=\"edit-site-add-new-template__custom-template-button\"\n\t\t\t\t\t\ticon={ edit }\n\t\t\t\t\t\tonClick={ () =>\n\t\t\t\t\t\t\tsetModalContent(\n\t\t\t\t\t\t\t\tmodalContentMap.customGenericTemplate\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t}\n\t\t\t\t\t>\n\t\t\t\t\t\t<Text\n\t\t\t\t\t\t\tlineHeight={ 1.53846153846 } // 20px\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t'A custom template can be manually applied to any post or page.'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</Text>\n\t\t\t\t\t</TemplateListItem>\n\t\t\t\t</Grid>\n\t\t\t) }\n\t\t\t{ modalContent === modalContentMap.customTemplate && (\n\t\t\t\t<AddCustomTemplateModalContent\n\t\t\t\t\tonSelect={ createTemplate }\n\t\t\t\t\tentityForSuggestions={ entityForSuggestions }\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t{ modalContent === modalContentMap.customGenericTemplate && (\n\t\t\t\t<AddCustomGenericTemplateModalContent\n\t\t\t\t\tonClose={ onModalClose }\n\t\t\t\t\tcreateTemplate={ createTemplate }\n\t\t\t\t/>\n\t\t\t) }\n\t\t</Modal>\n\t);\n}\n\nfunction NewTemplate() {\n\tconst [ showModal, setShowModal ] = useState( false );\n\n\tconst { postType } = useSelect( ( select ) => {\n\t\tconst { getPostType } = select( coreStore );\n\n\t\treturn {\n\t\t\tpostType: getPostType( TEMPLATE_POST_TYPE ),\n\t\t};\n\t}, [] );\n\n\tif ( ! postType ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<Button\n\t\t\t\tvariant=\"primary\"\n\t\t\t\tonClick={ () => setShowModal( true ) }\n\t\t\t\tlabel={ postType.labels.add_new_item }\n\t\t\t>\n\t\t\t\t{ postType.labels.add_new_item }\n\t\t\t</Button>\n\t\t\t{ showModal && (\n\t\t\t\t<NewTemplateModal onClose={ () => setShowModal( false ) } />\n\t\t\t) }\n\t\t</>\n\t);\n}\n\nfunction useMissingTemplates( setEntityForSuggestions, onClick ) {\n\tconst existingTemplates = useExistingTemplates();\n\tconst defaultTemplateTypes = useDefaultTemplateTypes();\n\tconst existingTemplateSlugs = ( existingTemplates || [] ).map(\n\t\t( { slug } ) => slug\n\t);\n\tconst missingDefaultTemplates = ( defaultTemplateTypes || [] ).filter(\n\t\t( template ) =>\n\t\t\tDEFAULT_TEMPLATE_SLUGS.includes( template.slug ) &&\n\t\t\t! existingTemplateSlugs.includes( template.slug )\n\t);\n\tconst onClickMenuItem = ( _entityForSuggestions ) => {\n\t\tonClick?.();\n\t\tsetEntityForSuggestions( _entityForSuggestions );\n\t};\n\t// We need to replace existing default template types with\n\t// the create specific template functionality. The original\n\t// info (title, description, etc.) is preserved in the\n\t// used hooks.\n\tconst enhancedMissingDefaultTemplateTypes = [ ...missingDefaultTemplates ];\n\tconst { defaultTaxonomiesMenuItems, taxonomiesMenuItems } =\n\t\tuseTaxonomiesMenuItems( onClickMenuItem );\n\tconst { defaultPostTypesMenuItems, postTypesMenuItems } =\n\t\tusePostTypeMenuItems( onClickMenuItem );\n\n\tconst authorMenuItem = useAuthorMenuItem( onClickMenuItem );\n\t[\n\t\t...defaultTaxonomiesMenuItems,\n\t\t...defaultPostTypesMenuItems,\n\t\tauthorMenuItem,\n\t].forEach( ( menuItem ) => {\n\t\tif ( ! menuItem ) {\n\t\t\treturn;\n\t\t}\n\t\tconst matchIndex = enhancedMissingDefaultTemplateTypes.findIndex(\n\t\t\t( template ) => template.slug === menuItem.slug\n\t\t);\n\t\t// Some default template types might have been filtered above from\n\t\t// `missingDefaultTemplates` because they only check for the general\n\t\t// template. So here we either replace or append the item, augmented\n\t\t// with the check if it has available specific item to create a\n\t\t// template for.\n\t\tif ( matchIndex > -1 ) {\n\t\t\tenhancedMissingDefaultTemplateTypes[ matchIndex ] = menuItem;\n\t\t} else {\n\t\t\tenhancedMissingDefaultTemplateTypes.push( menuItem );\n\t\t}\n\t} );\n\t// Update the sort order to match the DEFAULT_TEMPLATE_SLUGS order.\n\tenhancedMissingDefaultTemplateTypes?.sort( ( template1, template2 ) => {\n\t\treturn (\n\t\t\tDEFAULT_TEMPLATE_SLUGS.indexOf( template1.slug ) -\n\t\t\tDEFAULT_TEMPLATE_SLUGS.indexOf( template2.slug )\n\t\t);\n\t} );\n\tconst missingTemplates = [\n\t\t...enhancedMissingDefaultTemplateTypes,\n\t\t...usePostTypeArchiveMenuItems(),\n\t\t...postTypesMenuItems,\n\t\t...taxonomiesMenuItems,\n\t];\n\treturn missingTemplates;\n}\n\nexport default memo( NewTemplate );\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["clsx","Button","Modal","__experimentalGrid","Grid","__experimentalText","Text","__experimentalVStack","VStack","Flex","Icon","decodeEntities","useState","memo","useSelect","useDispatch","store","coreStore","archive","blockMeta","calendar","category","commentAuthorAvatar","edit","home","layout","list","media","notFound","page","pin","verse","search","tag","__","sprintf","noticesStore","privateApis","routerPrivateApis","TEMPLATE_POST_TYPE","AddCustomTemplateModalContent","useExistingTemplates","useDefaultTemplateTypes","useTaxonomiesMenuItems","usePostTypeMenuItems","useAuthorMenuItem","usePostTypeArchiveMenuItems","AddCustomGenericTemplateModalContent","unlock","useHistory","DEFAULT_TEMPLATE_SLUGS","TEMPLATE_ICONS","single","index","author","taxonomy","date","attachment","TemplateListItem","title","direction","className","description","icon","onClick","children","createElement","label","showTooltip","as","spacing","align","justify","style","width","alignment","weight","lineHeight","modalContentMap","templatesList","customTemplate","customGenericTemplate","NewTemplateModal","onClose","modalContent","setModalContent","entityForSuggestions","setEntityForSuggestions","isSubmitting","setIsSubmitting","missingTemplates","useMissingTemplates","history","saveEntityRecord","createErrorNotice","createSuccessNotice","homeUrl","select","getUnstableBase","TEMPLATE_SHORT_DESCRIPTIONS","Date","getFullYear","createTemplate","template","isWPSuggestion","slug","newTemplate","toString","status","is_wp_suggestion","throwOnError","push","postId","id","postType","canvas","rendered","type","error","errorMessage","message","code","onModalClose","modalTitle","labels","singular_name","onRequestClose","overlayClassName","undefined","columns","gap","map","key","onSelect","NewTemplate","showModal","setShowModal","getPostType","Fragment","variant","add_new_item","existingTemplates","defaultTemplateTypes","existingTemplateSlugs","missingDefaultTemplates","filter","includes","onClickMenuItem","_entityForSuggestions","enhancedMissingDefaultTemplateTypes","defaultTaxonomiesMenuItems","taxonomiesMenuItems","defaultPostTypesMenuItems","postTypesMenuItems","authorMenuItem","forEach","menuItem","matchIndex","findIndex","sort","template1","template2","indexOf"],"sources":["@wordpress/edit-site/src/components/add-new-template/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tButton,\n\tModal,\n\t__experimentalGrid as Grid,\n\t__experimentalText as Text,\n\t__experimentalVStack as VStack,\n\tFlex,\n\tIcon,\n} from '@wordpress/components';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { useState, memo } from '@wordpress/element';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport {\n\tarchive,\n\tblockMeta,\n\tcalendar,\n\tcategory,\n\tcommentAuthorAvatar,\n\tedit,\n\thome,\n\tlayout,\n\tlist,\n\tmedia,\n\tnotFound,\n\tpage,\n\tpin,\n\tverse,\n\tsearch,\n\ttag,\n} from '@wordpress/icons';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\n\n/**\n * Internal dependencies\n */\nimport { TEMPLATE_POST_TYPE } from '../../utils/constants';\n\n/**\n * Internal dependencies\n */\nimport AddCustomTemplateModalContent from './add-custom-template-modal-content';\nimport {\n\tuseExistingTemplates,\n\tuseDefaultTemplateTypes,\n\tuseTaxonomiesMenuItems,\n\tusePostTypeMenuItems,\n\tuseAuthorMenuItem,\n\tusePostTypeArchiveMenuItems,\n} from './utils';\nimport AddCustomGenericTemplateModalContent from './add-custom-generic-template-modal-content';\nimport { unlock } from '../../lock-unlock';\n\nconst { useHistory } = unlock( routerPrivateApis );\n\nconst DEFAULT_TEMPLATE_SLUGS = [\n\t'front-page',\n\t'home',\n\t'single',\n\t'page',\n\t'index',\n\t'archive',\n\t'author',\n\t'category',\n\t'date',\n\t'tag',\n\t'search',\n\t'404',\n];\n\nconst TEMPLATE_ICONS = {\n\t'front-page': home,\n\thome: verse,\n\tsingle: pin,\n\tpage,\n\tarchive,\n\tsearch,\n\t404: notFound,\n\tindex: list,\n\tcategory,\n\tauthor: commentAuthorAvatar,\n\ttaxonomy: blockMeta,\n\tdate: calendar,\n\ttag,\n\tattachment: media,\n};\n\nfunction TemplateListItem( {\n\ttitle,\n\tdirection,\n\tclassName,\n\tdescription,\n\ticon,\n\tonClick,\n\tchildren,\n} ) {\n\treturn (\n\t\t<Button\n\t\t\tclassName={ className }\n\t\t\tonClick={ onClick }\n\t\t\tlabel={ description }\n\t\t\tshowTooltip={ !! description }\n\t\t>\n\t\t\t<Flex\n\t\t\t\tas=\"span\"\n\t\t\t\tspacing={ 2 }\n\t\t\t\talign=\"center\"\n\t\t\t\tjustify=\"center\"\n\t\t\t\tstyle={ { width: '100%' } }\n\t\t\t\tdirection={ direction }\n\t\t\t>\n\t\t\t\t<div className=\"edit-site-add-new-template__template-icon\">\n\t\t\t\t\t<Icon icon={ icon } />\n\t\t\t\t</div>\n\t\t\t\t<VStack\n\t\t\t\t\tclassName=\"edit-site-add-new-template__template-name\"\n\t\t\t\t\talignment=\"center\"\n\t\t\t\t\tspacing={ 0 }\n\t\t\t\t>\n\t\t\t\t\t<Text\n\t\t\t\t\t\tweight={ 500 }\n\t\t\t\t\t\tlineHeight={ 1.53846153846 } // 20px\n\t\t\t\t\t>\n\t\t\t\t\t\t{ title }\n\t\t\t\t\t</Text>\n\t\t\t\t\t{ children }\n\t\t\t\t</VStack>\n\t\t\t</Flex>\n\t\t</Button>\n\t);\n}\n\nconst modalContentMap = {\n\ttemplatesList: 1,\n\tcustomTemplate: 2,\n\tcustomGenericTemplate: 3,\n};\n\nfunction NewTemplateModal( { onClose } ) {\n\tconst [ modalContent, setModalContent ] = useState(\n\t\tmodalContentMap.templatesList\n\t);\n\tconst [ entityForSuggestions, setEntityForSuggestions ] = useState( {} );\n\tconst [ isSubmitting, setIsSubmitting ] = useState( false );\n\tconst missingTemplates = useMissingTemplates( setEntityForSuggestions, () =>\n\t\tsetModalContent( modalContentMap.customTemplate )\n\t);\n\tconst history = useHistory();\n\tconst { saveEntityRecord } = useDispatch( coreStore );\n\tconst { createErrorNotice, createSuccessNotice } =\n\t\tuseDispatch( noticesStore );\n\n\tconst { homeUrl } = useSelect( ( select ) => {\n\t\tconst {\n\t\t\tgetUnstableBase, // Site index.\n\t\t} = select( coreStore );\n\n\t\treturn {\n\t\t\thomeUrl: getUnstableBase()?.home,\n\t\t};\n\t}, [] );\n\n\tconst TEMPLATE_SHORT_DESCRIPTIONS = {\n\t\t'front-page': homeUrl,\n\t\tdate: sprintf(\n\t\t\t// translators: %s: The homepage url.\n\t\t\t__( 'E.g. %s' ),\n\t\t\thomeUrl + '/' + new Date().getFullYear()\n\t\t),\n\t};\n\n\tasync function createTemplate( template, isWPSuggestion = true ) {\n\t\tif ( isSubmitting ) {\n\t\t\treturn;\n\t\t}\n\t\tsetIsSubmitting( true );\n\t\ttry {\n\t\t\tconst { title, description, slug } = template;\n\t\t\tconst newTemplate = await saveEntityRecord(\n\t\t\t\t'postType',\n\t\t\t\tTEMPLATE_POST_TYPE,\n\t\t\t\t{\n\t\t\t\t\tdescription,\n\t\t\t\t\t// Slugs need to be strings, so this is for template `404`\n\t\t\t\t\tslug: slug.toString(),\n\t\t\t\t\tstatus: 'publish',\n\t\t\t\t\ttitle,\n\t\t\t\t\t// This adds a post meta field in template that is part of `is_custom` value calculation.\n\t\t\t\t\tis_wp_suggestion: isWPSuggestion,\n\t\t\t\t},\n\t\t\t\t{ throwOnError: true }\n\t\t\t);\n\n\t\t\t// Navigate to the created template editor.\n\t\t\thistory.push( {\n\t\t\t\tpostId: newTemplate.id,\n\t\t\t\tpostType: TEMPLATE_POST_TYPE,\n\t\t\t\tcanvas: 'edit',\n\t\t\t} );\n\n\t\t\tcreateSuccessNotice(\n\t\t\t\tsprintf(\n\t\t\t\t\t// translators: %s: Title of the created template e.g: \"Category\".\n\t\t\t\t\t__( '\"%s\" successfully created.' ),\n\t\t\t\t\tdecodeEntities( newTemplate.title?.rendered || title )\n\t\t\t\t),\n\t\t\t\t{\n\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t}\n\t\t\t);\n\t\t} catch ( error ) {\n\t\t\tconst errorMessage =\n\t\t\t\terror.message && error.code !== 'unknown_error'\n\t\t\t\t\t? error.message\n\t\t\t\t\t: __( 'An error occurred while creating the template.' );\n\n\t\t\tcreateErrorNotice( errorMessage, {\n\t\t\t\ttype: 'snackbar',\n\t\t\t} );\n\t\t} finally {\n\t\t\tsetIsSubmitting( false );\n\t\t}\n\t}\n\tconst onModalClose = () => {\n\t\tonClose();\n\t\tsetModalContent( modalContentMap.templatesList );\n\t};\n\n\tlet modalTitle = __( 'Add template' );\n\tif ( modalContent === modalContentMap.customTemplate ) {\n\t\tmodalTitle = sprintf(\n\t\t\t// translators: %s: Name of the post type e.g: \"Post\".\n\t\t\t__( 'Add template: %s' ),\n\t\t\tentityForSuggestions.labels.singular_name\n\t\t);\n\t} else if ( modalContent === modalContentMap.customGenericTemplate ) {\n\t\tmodalTitle = __( 'Create custom template' );\n\t}\n\n\treturn (\n\t\t<Modal\n\t\t\ttitle={ modalTitle }\n\t\t\tclassName={ clsx( 'edit-site-add-new-template__modal', {\n\t\t\t\t'edit-site-add-new-template__modal_template_list':\n\t\t\t\t\tmodalContent === modalContentMap.templatesList,\n\t\t\t\t'edit-site-custom-template-modal':\n\t\t\t\t\tmodalContent === modalContentMap.customTemplate,\n\t\t\t} ) }\n\t\t\tonRequestClose={ onModalClose }\n\t\t\toverlayClassName={\n\t\t\t\tmodalContent === modalContentMap.customGenericTemplate\n\t\t\t\t\t? 'edit-site-custom-generic-template__modal'\n\t\t\t\t\t: undefined\n\t\t\t}\n\t\t>\n\t\t\t{ modalContent === modalContentMap.templatesList && (\n\t\t\t\t<Grid\n\t\t\t\t\tcolumns={ 3 }\n\t\t\t\t\tgap={ 4 }\n\t\t\t\t\talign=\"flex-start\"\n\t\t\t\t\tjustify=\"center\"\n\t\t\t\t\tclassName=\"edit-site-add-new-template__template-list__contents\"\n\t\t\t\t>\n\t\t\t\t\t<Flex className=\"edit-site-add-new-template__template-list__prompt\">\n\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t'Select what the new template should apply to:'\n\t\t\t\t\t\t) }\n\t\t\t\t\t</Flex>\n\t\t\t\t\t{ missingTemplates.map( ( template ) => {\n\t\t\t\t\t\tconst { title, slug, onClick } = template;\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t<TemplateListItem\n\t\t\t\t\t\t\t\tkey={ slug }\n\t\t\t\t\t\t\t\ttitle={ title }\n\t\t\t\t\t\t\t\tdirection=\"column\"\n\t\t\t\t\t\t\t\tclassName=\"edit-site-add-new-template__template-button\"\n\t\t\t\t\t\t\t\tdescription={\n\t\t\t\t\t\t\t\t\tTEMPLATE_SHORT_DESCRIPTIONS[ slug ]\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\ticon={ TEMPLATE_ICONS[ slug ] || layout }\n\t\t\t\t\t\t\t\tonClick={ () =>\n\t\t\t\t\t\t\t\t\tonClick\n\t\t\t\t\t\t\t\t\t\t? onClick( template )\n\t\t\t\t\t\t\t\t\t\t: createTemplate( template )\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t);\n\t\t\t\t\t} ) }\n\t\t\t\t\t<TemplateListItem\n\t\t\t\t\t\ttitle={ __( 'Custom template' ) }\n\t\t\t\t\t\tdirection=\"row\"\n\t\t\t\t\t\tclassName=\"edit-site-add-new-template__custom-template-button\"\n\t\t\t\t\t\ticon={ edit }\n\t\t\t\t\t\tonClick={ () =>\n\t\t\t\t\t\t\tsetModalContent(\n\t\t\t\t\t\t\t\tmodalContentMap.customGenericTemplate\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t}\n\t\t\t\t\t>\n\t\t\t\t\t\t<Text\n\t\t\t\t\t\t\tlineHeight={ 1.53846153846 } // 20px\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t'A custom template can be manually applied to any post or page.'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</Text>\n\t\t\t\t\t</TemplateListItem>\n\t\t\t\t</Grid>\n\t\t\t) }\n\t\t\t{ modalContent === modalContentMap.customTemplate && (\n\t\t\t\t<AddCustomTemplateModalContent\n\t\t\t\t\tonSelect={ createTemplate }\n\t\t\t\t\tentityForSuggestions={ entityForSuggestions }\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t{ modalContent === modalContentMap.customGenericTemplate && (\n\t\t\t\t<AddCustomGenericTemplateModalContent\n\t\t\t\t\tonClose={ onModalClose }\n\t\t\t\t\tcreateTemplate={ createTemplate }\n\t\t\t\t/>\n\t\t\t) }\n\t\t</Modal>\n\t);\n}\n\nfunction NewTemplate() {\n\tconst [ showModal, setShowModal ] = useState( false );\n\n\tconst { postType } = useSelect( ( select ) => {\n\t\tconst { getPostType } = select( coreStore );\n\n\t\treturn {\n\t\t\tpostType: getPostType( TEMPLATE_POST_TYPE ),\n\t\t};\n\t}, [] );\n\n\tif ( ! postType ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<Button\n\t\t\t\tvariant=\"primary\"\n\t\t\t\tonClick={ () => setShowModal( true ) }\n\t\t\t\tlabel={ postType.labels.add_new_item }\n\t\t\t>\n\t\t\t\t{ postType.labels.add_new_item }\n\t\t\t</Button>\n\t\t\t{ showModal && (\n\t\t\t\t<NewTemplateModal onClose={ () => setShowModal( false ) } />\n\t\t\t) }\n\t\t</>\n\t);\n}\n\nfunction useMissingTemplates( setEntityForSuggestions, onClick ) {\n\tconst existingTemplates = useExistingTemplates();\n\tconst defaultTemplateTypes = useDefaultTemplateTypes();\n\tconst existingTemplateSlugs = ( existingTemplates || [] ).map(\n\t\t( { slug } ) => slug\n\t);\n\tconst missingDefaultTemplates = ( defaultTemplateTypes || [] ).filter(\n\t\t( template ) =>\n\t\t\tDEFAULT_TEMPLATE_SLUGS.includes( template.slug ) &&\n\t\t\t! existingTemplateSlugs.includes( template.slug )\n\t);\n\tconst onClickMenuItem = ( _entityForSuggestions ) => {\n\t\tonClick?.();\n\t\tsetEntityForSuggestions( _entityForSuggestions );\n\t};\n\t// We need to replace existing default template types with\n\t// the create specific template functionality. The original\n\t// info (title, description, etc.) is preserved in the\n\t// used hooks.\n\tconst enhancedMissingDefaultTemplateTypes = [ ...missingDefaultTemplates ];\n\tconst { defaultTaxonomiesMenuItems, taxonomiesMenuItems } =\n\t\tuseTaxonomiesMenuItems( onClickMenuItem );\n\tconst { defaultPostTypesMenuItems, postTypesMenuItems } =\n\t\tusePostTypeMenuItems( onClickMenuItem );\n\n\tconst authorMenuItem = useAuthorMenuItem( onClickMenuItem );\n\t[\n\t\t...defaultTaxonomiesMenuItems,\n\t\t...defaultPostTypesMenuItems,\n\t\tauthorMenuItem,\n\t].forEach( ( menuItem ) => {\n\t\tif ( ! menuItem ) {\n\t\t\treturn;\n\t\t}\n\t\tconst matchIndex = enhancedMissingDefaultTemplateTypes.findIndex(\n\t\t\t( template ) => template.slug === menuItem.slug\n\t\t);\n\t\t// Some default template types might have been filtered above from\n\t\t// `missingDefaultTemplates` because they only check for the general\n\t\t// template. So here we either replace or append the item, augmented\n\t\t// with the check if it has available specific item to create a\n\t\t// template for.\n\t\tif ( matchIndex > -1 ) {\n\t\t\tenhancedMissingDefaultTemplateTypes[ matchIndex ] = menuItem;\n\t\t} else {\n\t\t\tenhancedMissingDefaultTemplateTypes.push( menuItem );\n\t\t}\n\t} );\n\t// Update the sort order to match the DEFAULT_TEMPLATE_SLUGS order.\n\tenhancedMissingDefaultTemplateTypes?.sort( ( template1, template2 ) => {\n\t\treturn (\n\t\t\tDEFAULT_TEMPLATE_SLUGS.indexOf( template1.slug ) -\n\t\t\tDEFAULT_TEMPLATE_SLUGS.indexOf( template2.slug )\n\t\t);\n\t} );\n\tconst missingTemplates = [\n\t\t...enhancedMissingDefaultTemplateTypes,\n\t\t...usePostTypeArchiveMenuItems(),\n\t\t...postTypesMenuItems,\n\t\t...taxonomiesMenuItems,\n\t];\n\treturn missingTemplates;\n}\n\nexport default memo( NewTemplate );\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -3,7 +3,7 @@ import { createElement } from "react";
|
|
|
3
3
|
* WordPress dependencies
|
|
4
4
|
*/
|
|
5
5
|
import { SlotFillProvider } from '@wordpress/components';
|
|
6
|
-
import { UnsavedChangesWarning } from '@wordpress/editor';
|
|
6
|
+
import { UnsavedChangesWarning, privateApis as editorPrivateApis } from '@wordpress/editor';
|
|
7
7
|
import { store as noticesStore } from '@wordpress/notices';
|
|
8
8
|
import { useDispatch } from '@wordpress/data';
|
|
9
9
|
import { __, sprintf } from '@wordpress/i18n';
|
|
@@ -14,11 +14,13 @@ import { privateApis as routerPrivateApis } from '@wordpress/router';
|
|
|
14
14
|
* Internal dependencies
|
|
15
15
|
*/
|
|
16
16
|
import Layout from '../layout';
|
|
17
|
-
import { GlobalStylesProvider } from '../global-styles/global-styles-provider';
|
|
18
17
|
import { unlock } from '../../lock-unlock';
|
|
19
18
|
const {
|
|
20
19
|
RouterProvider
|
|
21
20
|
} = unlock(routerPrivateApis);
|
|
21
|
+
const {
|
|
22
|
+
GlobalStylesProvider
|
|
23
|
+
} = unlock(editorPrivateApis);
|
|
22
24
|
export default function App() {
|
|
23
25
|
const {
|
|
24
26
|
createErrorNotice
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["SlotFillProvider","UnsavedChangesWarning","store","noticesStore","useDispatch","__","sprintf","PluginArea","
|
|
1
|
+
{"version":3,"names":["SlotFillProvider","UnsavedChangesWarning","privateApis","editorPrivateApis","store","noticesStore","useDispatch","__","sprintf","PluginArea","routerPrivateApis","Layout","unlock","RouterProvider","GlobalStylesProvider","App","createErrorNotice","onPluginAreaError","name","createElement","onError"],"sources":["@wordpress/edit-site/src/components/app/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { SlotFillProvider } from '@wordpress/components';\nimport {\n\tUnsavedChangesWarning,\n\tprivateApis as editorPrivateApis,\n} from '@wordpress/editor';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { useDispatch } from '@wordpress/data';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { PluginArea } from '@wordpress/plugins';\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\n\n/**\n * Internal dependencies\n */\nimport Layout from '../layout';\nimport { unlock } from '../../lock-unlock';\n\nconst { RouterProvider } = unlock( routerPrivateApis );\nconst { GlobalStylesProvider } = unlock( editorPrivateApis );\n\nexport default function App() {\n\tconst { createErrorNotice } = useDispatch( noticesStore );\n\n\tfunction onPluginAreaError( name ) {\n\t\tcreateErrorNotice(\n\t\t\tsprintf(\n\t\t\t\t/* translators: %s: plugin name */\n\t\t\t\t__(\n\t\t\t\t\t'The \"%s\" plugin has encountered an error and cannot be rendered.'\n\t\t\t\t),\n\t\t\t\tname\n\t\t\t)\n\t\t);\n\t}\n\n\treturn (\n\t\t<SlotFillProvider>\n\t\t\t<GlobalStylesProvider>\n\t\t\t\t<UnsavedChangesWarning />\n\t\t\t\t<RouterProvider>\n\t\t\t\t\t<Layout />\n\t\t\t\t\t<PluginArea onError={ onPluginAreaError } />\n\t\t\t\t</RouterProvider>\n\t\t\t</GlobalStylesProvider>\n\t\t</SlotFillProvider>\n\t);\n}\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,gBAAgB,QAAQ,uBAAuB;AACxD,SACCC,qBAAqB,EACrBC,WAAW,IAAIC,iBAAiB,QAC1B,mBAAmB;AAC1B,SAASC,KAAK,IAAIC,YAAY,QAAQ,oBAAoB;AAC1D,SAASC,WAAW,QAAQ,iBAAiB;AAC7C,SAASC,EAAE,EAAEC,OAAO,QAAQ,iBAAiB;AAC7C,SAASC,UAAU,QAAQ,oBAAoB;AAC/C,SAASP,WAAW,IAAIQ,iBAAiB,QAAQ,mBAAmB;;AAEpE;AACA;AACA;AACA,OAAOC,MAAM,MAAM,WAAW;AAC9B,SAASC,MAAM,QAAQ,mBAAmB;AAE1C,MAAM;EAAEC;AAAe,CAAC,GAAGD,MAAM,CAAEF,iBAAkB,CAAC;AACtD,MAAM;EAAEI;AAAqB,CAAC,GAAGF,MAAM,CAAET,iBAAkB,CAAC;AAE5D,eAAe,SAASY,GAAGA,CAAA,EAAG;EAC7B,MAAM;IAAEC;EAAkB,CAAC,GAAGV,WAAW,CAAED,YAAa,CAAC;EAEzD,SAASY,iBAAiBA,CAAEC,IAAI,EAAG;IAClCF,iBAAiB,CAChBR,OAAO,EACN;IACAD,EAAE,CACD,kEACD,CAAC,EACDW,IACD,CACD,CAAC;EACF;EAEA,OACCC,aAAA,CAACnB,gBAAgB,QAChBmB,aAAA,CAACL,oBAAoB,QACpBK,aAAA,CAAClB,qBAAqB,MAAE,CAAC,EACzBkB,aAAA,CAACN,cAAc,QACdM,aAAA,CAACR,MAAM,MAAE,CAAC,EACVQ,aAAA,CAACV,UAAU;IAACW,OAAO,EAAGH;EAAmB,CAAE,CAC5B,CACK,CACL,CAAC;AAErB","ignoreList":[]}
|
|
@@ -2,7 +2,7 @@ import { createElement } from "react";
|
|
|
2
2
|
/**
|
|
3
3
|
* External dependencies
|
|
4
4
|
*/
|
|
5
|
-
import
|
|
5
|
+
import clsx from 'clsx';
|
|
6
6
|
|
|
7
7
|
/**
|
|
8
8
|
* WordPress dependencies
|
|
@@ -20,7 +20,6 @@ import { store as editorStore, privateApis as editorPrivateApis } from '@wordpre
|
|
|
20
20
|
import { unlock } from '../../lock-unlock';
|
|
21
21
|
import { store as editSiteStore } from '../../store';
|
|
22
22
|
import { FOCUSABLE_ENTITIES, NAVIGATION_POST_TYPE } from '../../utils/constants';
|
|
23
|
-
import { computeIFrameScale } from '../../utils/math';
|
|
24
23
|
const {
|
|
25
24
|
EditorCanvas: EditorCanvasRoot
|
|
26
25
|
} = unlock(editorPrivateApis);
|
|
@@ -36,12 +35,10 @@ function EditorCanvas({
|
|
|
36
35
|
isFocusMode,
|
|
37
36
|
templateType,
|
|
38
37
|
canvasMode,
|
|
39
|
-
isZoomOutMode,
|
|
40
38
|
currentPostIsTrashed
|
|
41
39
|
} = useSelect(select => {
|
|
42
40
|
const {
|
|
43
|
-
getBlockCount
|
|
44
|
-
__unstableGetEditorMode
|
|
41
|
+
getBlockCount
|
|
45
42
|
} = select(blockEditorStore);
|
|
46
43
|
const {
|
|
47
44
|
getEditedPostType,
|
|
@@ -51,7 +48,6 @@ function EditorCanvas({
|
|
|
51
48
|
return {
|
|
52
49
|
templateType: _templateType,
|
|
53
50
|
isFocusMode: FOCUSABLE_ENTITIES.includes(_templateType),
|
|
54
|
-
isZoomOutMode: __unstableGetEditorMode() === 'zoom-out',
|
|
55
51
|
canvasMode: getCanvasMode(),
|
|
56
52
|
hasBlocks: !!getBlockCount(),
|
|
57
53
|
currentPostIsTrashed: select(editorStore).getCurrentPostAttribute('status') === 'trash'
|
|
@@ -116,24 +112,14 @@ function EditorCanvas({
|
|
|
116
112
|
// which isn't a requirement in auto resize mode.
|
|
117
113
|
enableResizing ? 'min-height:0!important;' : ''}}body{position:relative; ${canvasMode === 'view' ? `min-height: 100vh; ${currentPostIsTrashed ? '' : 'cursor: pointer;'}` : ''}}}`
|
|
118
114
|
}], [settings.styles, enableResizing, canvasMode, currentPostIsTrashed]);
|
|
119
|
-
const frameSize = isZoomOutMode ? 20 : undefined;
|
|
120
|
-
const scale = isZoomOutMode ? contentWidth => computeIFrameScale({
|
|
121
|
-
width: 1000,
|
|
122
|
-
scale: 0.55
|
|
123
|
-
}, {
|
|
124
|
-
width: 400,
|
|
125
|
-
scale: 0.9
|
|
126
|
-
}, contentWidth) : undefined;
|
|
127
115
|
return createElement(EditorCanvasRoot, {
|
|
128
|
-
className:
|
|
116
|
+
className: clsx('edit-site-editor-canvas__block-list', {
|
|
129
117
|
'is-navigation-block': isTemplateTypeNavigation
|
|
130
118
|
}),
|
|
131
119
|
renderAppender: showBlockAppender,
|
|
132
120
|
styles: styles,
|
|
133
121
|
iframeProps: {
|
|
134
|
-
|
|
135
|
-
frameSize,
|
|
136
|
-
className: classnames('edit-site-visual-editor__editor-canvas', {
|
|
122
|
+
className: clsx('edit-site-visual-editor__editor-canvas', {
|
|
137
123
|
'is-focused': isFocused && canvasMode === 'view'
|
|
138
124
|
}),
|
|
139
125
|
...props,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["
|
|
1
|
+
{"version":3,"names":["clsx","store","blockEditorStore","useSelect","useDispatch","ENTER","SPACE","useState","useEffect","useMemo","__","editorStore","privateApis","editorPrivateApis","unlock","editSiteStore","FOCUSABLE_ENTITIES","NAVIGATION_POST_TYPE","EditorCanvas","EditorCanvasRoot","enableResizing","settings","children","onClick","props","hasBlocks","isFocusMode","templateType","canvasMode","currentPostIsTrashed","select","getBlockCount","getEditedPostType","getCanvasMode","_templateType","includes","getCurrentPostAttribute","setCanvasMode","isFocused","setIsFocused","viewModeIframeProps","title","role","tabIndex","onFocus","onBlur","onKeyDown","event","keyCode","preventDefault","onClickCapture","stopPropagation","readonly","isTemplateTypeNavigation","isNavigationFocusMode","showBlockAppender","undefined","styles","css","createElement","className","renderAppender","iframeProps"],"sources":["@wordpress/edit-site/src/components/block-editor/editor-canvas.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { store as blockEditorStore } from '@wordpress/block-editor';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { ENTER, SPACE } from '@wordpress/keycodes';\nimport { useState, useEffect, useMemo } from '@wordpress/element';\nimport { __ } from '@wordpress/i18n';\nimport {\n\tstore as editorStore,\n\tprivateApis as editorPrivateApis,\n} from '@wordpress/editor';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../lock-unlock';\nimport { store as editSiteStore } from '../../store';\nimport {\n\tFOCUSABLE_ENTITIES,\n\tNAVIGATION_POST_TYPE,\n} from '../../utils/constants';\n\nconst { EditorCanvas: EditorCanvasRoot } = unlock( editorPrivateApis );\n\nfunction EditorCanvas( {\n\tenableResizing,\n\tsettings,\n\tchildren,\n\tonClick,\n\t...props\n} ) {\n\tconst {\n\t\thasBlocks,\n\t\tisFocusMode,\n\t\ttemplateType,\n\t\tcanvasMode,\n\t\tcurrentPostIsTrashed,\n\t} = useSelect( ( select ) => {\n\t\tconst { getBlockCount } = select( blockEditorStore );\n\t\tconst { getEditedPostType, getCanvasMode } = unlock(\n\t\t\tselect( editSiteStore )\n\t\t);\n\t\tconst _templateType = getEditedPostType();\n\n\t\treturn {\n\t\t\ttemplateType: _templateType,\n\t\t\tisFocusMode: FOCUSABLE_ENTITIES.includes( _templateType ),\n\t\t\tcanvasMode: getCanvasMode(),\n\t\t\thasBlocks: !! getBlockCount(),\n\t\t\tcurrentPostIsTrashed:\n\t\t\t\tselect( editorStore ).getCurrentPostAttribute( 'status' ) ===\n\t\t\t\t'trash',\n\t\t};\n\t}, [] );\n\tconst { setCanvasMode } = unlock( useDispatch( editSiteStore ) );\n\tconst [ isFocused, setIsFocused ] = useState( false );\n\n\tuseEffect( () => {\n\t\tif ( canvasMode === 'edit' ) {\n\t\t\tsetIsFocused( false );\n\t\t}\n\t}, [ canvasMode ] );\n\n\t// In view mode, make the canvas iframe be perceived and behave as a button\n\t// to switch to edit mode, with a meaningful label and no title attribute.\n\tconst viewModeIframeProps = {\n\t\t'aria-label': __( 'Edit' ),\n\t\t'aria-disabled': currentPostIsTrashed,\n\t\ttitle: null,\n\t\trole: 'button',\n\t\ttabIndex: 0,\n\t\tonFocus: () => setIsFocused( true ),\n\t\tonBlur: () => setIsFocused( false ),\n\t\tonKeyDown: ( event ) => {\n\t\t\tconst { keyCode } = event;\n\t\t\tif (\n\t\t\t\t( keyCode === ENTER || keyCode === SPACE ) &&\n\t\t\t\t! currentPostIsTrashed\n\t\t\t) {\n\t\t\t\tevent.preventDefault();\n\t\t\t\tsetCanvasMode( 'edit' );\n\t\t\t}\n\t\t},\n\t\tonClick: () => {\n\t\t\tif ( !! onClick ) {\n\t\t\t\tonClick();\n\t\t\t} else {\n\t\t\t\tsetCanvasMode( 'edit' );\n\t\t\t}\n\t\t},\n\t\tonClickCapture: ( event ) => {\n\t\t\tif ( currentPostIsTrashed ) {\n\t\t\t\tevent.preventDefault();\n\t\t\t\tevent.stopPropagation();\n\t\t\t}\n\t\t},\n\t\treadonly: true,\n\t};\n\tconst isTemplateTypeNavigation = templateType === NAVIGATION_POST_TYPE;\n\tconst isNavigationFocusMode = isTemplateTypeNavigation && isFocusMode;\n\t// Hide the appender when:\n\t// - In navigation focus mode (should only allow the root Nav block).\n\t// - In view mode (i.e. not editing).\n\tconst showBlockAppender =\n\t\t( isNavigationFocusMode && hasBlocks ) || canvasMode === 'view'\n\t\t\t? false\n\t\t\t: undefined;\n\n\tconst styles = useMemo(\n\t\t() => [\n\t\t\t...settings.styles,\n\t\t\t{\n\t\t\t\t// Forming a \"block formatting context\" to prevent margin collapsing.\n\t\t\t\t// @see https://developer.mozilla.org/en-US/docs/Web/Guide/CSS/Block_formatting_context\n\n\t\t\t\tcss: `.is-root-container{display:flow-root;${\n\t\t\t\t\t// Some themes will have `min-height: 100vh` for the root container,\n\t\t\t\t\t// which isn't a requirement in auto resize mode.\n\t\t\t\t\tenableResizing ? 'min-height:0!important;' : ''\n\t\t\t\t}}body{position:relative; ${\n\t\t\t\t\tcanvasMode === 'view'\n\t\t\t\t\t\t? `min-height: 100vh; ${\n\t\t\t\t\t\t\t\tcurrentPostIsTrashed ? '' : 'cursor: pointer;'\n\t\t\t\t\t\t }`\n\t\t\t\t\t\t: ''\n\t\t\t\t}}}`,\n\t\t\t},\n\t\t],\n\t\t[ settings.styles, enableResizing, canvasMode, currentPostIsTrashed ]\n\t);\n\n\treturn (\n\t\t<EditorCanvasRoot\n\t\t\tclassName={ clsx( 'edit-site-editor-canvas__block-list', {\n\t\t\t\t'is-navigation-block': isTemplateTypeNavigation,\n\t\t\t} ) }\n\t\t\trenderAppender={ showBlockAppender }\n\t\t\tstyles={ styles }\n\t\t\tiframeProps={ {\n\t\t\t\tclassName: clsx( 'edit-site-visual-editor__editor-canvas', {\n\t\t\t\t\t'is-focused': isFocused && canvasMode === 'view',\n\t\t\t\t} ),\n\t\t\t\t...props,\n\t\t\t\t...( canvasMode === 'view' ? viewModeIframeProps : {} ),\n\t\t\t} }\n\t\t>\n\t\t\t{ children }\n\t\t</EditorCanvasRoot>\n\t);\n}\n\nexport default EditorCanvas;\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -4,7 +4,7 @@ import { createElement, Fragment } from "react";
|
|
|
4
4
|
*/
|
|
5
5
|
import { __ } from '@wordpress/i18n';
|
|
6
6
|
import { LEFT, RIGHT } from '@wordpress/keycodes';
|
|
7
|
-
import { VisuallyHidden } from '@wordpress/components';
|
|
7
|
+
import { VisuallyHidden, Tooltip, __unstableMotion as motion } from '@wordpress/components';
|
|
8
8
|
const DELTA_DISTANCE = 20; // The distance to resize per keydown in pixels.
|
|
9
9
|
|
|
10
10
|
export default function ResizeHandle({
|
|
@@ -22,14 +22,29 @@ export default function ResizeHandle({
|
|
|
22
22
|
resizeWidthBy(-DELTA_DISTANCE);
|
|
23
23
|
}
|
|
24
24
|
}
|
|
25
|
-
|
|
25
|
+
const resizeHandleVariants = {
|
|
26
|
+
active: {
|
|
27
|
+
opacity: 1,
|
|
28
|
+
scaleY: 1.3
|
|
29
|
+
}
|
|
30
|
+
};
|
|
31
|
+
const resizableHandleHelpId = `resizable-editor__resize-help-${direction}`;
|
|
32
|
+
return createElement(Fragment, null, createElement(Tooltip, {
|
|
33
|
+
text: __('Drag to resize')
|
|
34
|
+
}, createElement(motion.button, {
|
|
26
35
|
className: `resizable-editor__drag-handle is-${direction} is-variation-${variation}`,
|
|
27
36
|
"aria-label": __('Drag to resize'),
|
|
28
|
-
"aria-describedby":
|
|
37
|
+
"aria-describedby": resizableHandleHelpId,
|
|
29
38
|
onKeyDown: handleKeyDown,
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
39
|
+
variants: resizeHandleVariants,
|
|
40
|
+
whileFocus: "active",
|
|
41
|
+
whileHover: "active",
|
|
42
|
+
whileTap: "active",
|
|
43
|
+
key: "handle",
|
|
44
|
+
role: "separator",
|
|
45
|
+
"aria-orientation": "vertical"
|
|
46
|
+
})), createElement(VisuallyHidden, {
|
|
47
|
+
id: resizableHandleHelpId
|
|
33
48
|
}, __('Use left and right arrow keys to resize the canvas.')));
|
|
34
49
|
}
|
|
35
50
|
//# sourceMappingURL=resize-handle.js.map
|