@wordpress/edit-site 5.18.0 → 5.19.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +2 -0
- package/build/components/add-new-pattern/index.js +62 -1
- package/build/components/add-new-pattern/index.js.map +1 -1
- package/build/components/add-new-template/index.js +3 -2
- package/build/components/add-new-template/index.js.map +1 -1
- package/build/components/add-new-template/new-template.js +6 -1
- package/build/components/add-new-template/new-template.js.map +1 -1
- package/build/components/add-new-template/utils.js +6 -1
- package/build/components/add-new-template/utils.js.map +1 -1
- package/build/components/app/index.js +2 -7
- package/build/components/app/index.js.map +1 -1
- package/build/components/block-editor/back-button.js +3 -2
- package/build/components/block-editor/back-button.js.map +1 -1
- package/build/components/block-editor/editor-canvas.js +20 -16
- package/build/components/block-editor/editor-canvas.js.map +1 -1
- package/build/components/block-editor/site-editor-canvas.js +1 -3
- package/build/components/block-editor/site-editor-canvas.js.map +1 -1
- package/build/components/block-editor/use-site-editor-settings.js +8 -4
- package/build/components/block-editor/use-site-editor-settings.js.map +1 -1
- package/build/components/canvas-loader/index.js +18 -1
- package/build/components/canvas-loader/index.js.map +1 -1
- package/build/components/editor/index.js +3 -8
- package/build/components/editor/index.js.map +1 -1
- package/build/components/global-styles/dimensions-panel.js +5 -4
- package/build/components/global-styles/dimensions-panel.js.map +1 -1
- package/build/components/global-styles/font-families.js +68 -0
- package/build/components/global-styles/font-families.js.map +1 -0
- package/build/components/global-styles/font-family-item.js +47 -0
- package/build/components/global-styles/font-family-item.js.map +1 -0
- package/build/components/global-styles/font-library-modal/confirm-delete-dialog.js +31 -0
- package/build/components/global-styles/font-library-modal/confirm-delete-dialog.js.map +1 -0
- package/build/components/global-styles/font-library-modal/context.js +285 -0
- package/build/components/global-styles/font-library-modal/context.js.map +1 -0
- package/build/components/global-styles/font-library-modal/font-card.js +58 -0
- package/build/components/global-styles/font-library-modal/font-card.js.map +1 -0
- package/build/components/global-styles/font-library-modal/font-demo.js +69 -0
- package/build/components/global-styles/font-library-modal/font-demo.js.map +1 -0
- package/build/components/global-styles/font-library-modal/font-variant.js +51 -0
- package/build/components/global-styles/font-library-modal/font-variant.js.map +1 -0
- package/build/components/global-styles/font-library-modal/fonts-grid.js +54 -0
- package/build/components/global-styles/font-library-modal/fonts-grid.js.map +1 -0
- package/build/components/global-styles/font-library-modal/index.js +47 -0
- package/build/components/global-styles/font-library-modal/index.js.map +1 -0
- package/build/components/global-styles/font-library-modal/installed-fonts.js +128 -0
- package/build/components/global-styles/font-library-modal/installed-fonts.js.map +1 -0
- package/build/components/global-styles/font-library-modal/library-font-card.js +44 -0
- package/build/components/global-styles/font-library-modal/library-font-card.js.map +1 -0
- package/build/components/global-styles/font-library-modal/library-font-details.js +43 -0
- package/build/components/global-styles/font-library-modal/library-font-details.js.map +1 -0
- package/build/components/global-styles/font-library-modal/library-font-variant.js +59 -0
- package/build/components/global-styles/font-library-modal/library-font-variant.js.map +1 -0
- package/build/components/global-styles/font-library-modal/local-fonts.js +143 -0
- package/build/components/global-styles/font-library-modal/local-fonts.js.map +1 -0
- package/build/components/global-styles/font-library-modal/resolvers.js +37 -0
- package/build/components/global-styles/font-library-modal/resolvers.js.map +1 -0
- package/build/components/global-styles/font-library-modal/tab-layout.js +45 -0
- package/build/components/global-styles/font-library-modal/tab-layout.js.map +1 -0
- package/build/components/global-styles/font-library-modal/utils/constants.js +37 -0
- package/build/components/global-styles/font-library-modal/utils/constants.js.map +1 -0
- package/build/components/global-styles/font-library-modal/utils/get-intersecting-font-faces.js +58 -0
- package/build/components/global-styles/font-library-modal/utils/get-intersecting-font-faces.js.map +1 -0
- package/build/components/global-styles/font-library-modal/utils/index.js +205 -0
- package/build/components/global-styles/font-library-modal/utils/index.js.map +1 -0
- package/build/components/global-styles/font-library-modal/utils/make-families-from-faces.js +22 -0
- package/build/components/global-styles/font-library-modal/utils/make-families-from-faces.js.map +1 -0
- package/build/components/global-styles/font-library-modal/utils/toggleFont.js +92 -0
- package/build/components/global-styles/font-library-modal/utils/toggleFont.js.map +1 -0
- package/build/components/global-styles/global-styles-provider.js +7 -12
- package/build/components/global-styles/global-styles-provider.js.map +1 -1
- package/build/components/global-styles/screen-block.js +34 -21
- package/build/components/global-styles/screen-block.js.map +1 -1
- package/build/components/global-styles/screen-revisions/index.js +1 -3
- package/build/components/global-styles/screen-revisions/index.js.map +1 -1
- package/build/components/global-styles/screen-revisions/use-global-styles-revisions.js +0 -1
- package/build/components/global-styles/screen-revisions/use-global-styles-revisions.js.map +1 -1
- package/build/components/global-styles/screen-typography.js +4 -72
- package/build/components/global-styles/screen-typography.js.map +1 -1
- package/build/components/global-styles/style-variations-container.js +3 -5
- package/build/components/global-styles/style-variations-container.js.map +1 -1
- package/build/components/global-styles/typogrphy-elements.js +96 -0
- package/build/components/global-styles/typogrphy-elements.js.map +1 -0
- package/build/components/page-patterns/duplicate-menu-item.js +52 -16
- package/build/components/page-patterns/duplicate-menu-item.js.map +1 -1
- package/build/components/page-patterns/grid-item.js +46 -20
- package/build/components/page-patterns/grid-item.js.map +1 -1
- package/build/components/page-patterns/header.js +3 -7
- package/build/components/page-patterns/header.js.map +1 -1
- package/build/components/page-patterns/index.js +3 -3
- package/build/components/page-patterns/index.js.map +1 -1
- package/build/components/page-patterns/patterns-list.js +7 -7
- package/build/components/page-patterns/patterns-list.js.map +1 -1
- package/build/components/page-patterns/rename-menu-item.js +6 -5
- package/build/components/page-patterns/rename-menu-item.js.map +1 -1
- package/build/components/page-patterns/search-items.js +8 -2
- package/build/components/page-patterns/search-items.js.map +1 -1
- package/build/components/page-patterns/use-patterns.js +53 -27
- package/build/components/page-patterns/use-patterns.js.map +1 -1
- package/build/components/page-patterns/utils.js +1 -20
- package/build/components/page-patterns/utils.js.map +1 -1
- package/build/components/sidebar-edit-mode/page-panels/edit-template.js +33 -24
- package/build/components/sidebar-edit-mode/page-panels/edit-template.js.map +1 -1
- package/build/components/sidebar-edit-mode/page-panels/hooks.js +64 -0
- package/build/components/sidebar-edit-mode/page-panels/hooks.js.map +1 -0
- package/build/components/sidebar-edit-mode/page-panels/index.js +1 -4
- package/build/components/sidebar-edit-mode/page-panels/index.js.map +1 -1
- package/build/components/sidebar-edit-mode/page-panels/page-summary.js +2 -1
- package/build/components/sidebar-edit-mode/page-panels/page-summary.js.map +1 -1
- package/build/components/sidebar-edit-mode/page-panels/reset-default-template.js +56 -0
- package/build/components/sidebar-edit-mode/page-panels/reset-default-template.js.map +1 -0
- package/build/components/sidebar-edit-mode/page-panels/swap-template-button.js +91 -0
- package/build/components/sidebar-edit-mode/page-panels/swap-template-button.js.map +1 -0
- package/build/components/sidebar-edit-mode/template-panel/index.js +11 -9
- package/build/components/sidebar-edit-mode/template-panel/index.js.map +1 -1
- package/build/components/sidebar-edit-mode/template-panel/last-revision.js +6 -4
- package/build/components/sidebar-edit-mode/template-panel/last-revision.js.map +1 -1
- package/build/components/sidebar-edit-mode/template-panel/pattern-categories.js +211 -0
- package/build/components/sidebar-edit-mode/template-panel/pattern-categories.js.map +1 -0
- package/build/components/sidebar-navigation-screen/index.js +6 -4
- package/build/components/sidebar-navigation-screen/index.js.map +1 -1
- package/build/components/sidebar-navigation-screen-details-footer/index.js +32 -4
- package/build/components/sidebar-navigation-screen-details-footer/index.js.map +1 -1
- package/build/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-row.js +4 -2
- package/build/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-row.js.map +1 -1
- package/build/components/sidebar-navigation-screen-global-styles/index.js +4 -31
- package/build/components/sidebar-navigation-screen-global-styles/index.js.map +1 -1
- package/build/components/sidebar-navigation-screen-page/index.js +3 -3
- package/build/components/sidebar-navigation-screen-page/index.js.map +1 -1
- package/build/components/sidebar-navigation-screen-pattern/index.js +18 -8
- package/build/components/sidebar-navigation-screen-pattern/index.js.map +1 -1
- package/build/components/sidebar-navigation-screen-pattern/use-pattern-details.js +34 -5
- package/build/components/sidebar-navigation-screen-pattern/use-pattern-details.js.map +1 -1
- package/build/components/sidebar-navigation-screen-patterns/index.js +7 -35
- package/build/components/sidebar-navigation-screen-patterns/index.js.map +1 -1
- package/build/components/sidebar-navigation-screen-patterns/use-pattern-categories.js +38 -4
- package/build/components/sidebar-navigation-screen-patterns/use-pattern-categories.js.map +1 -1
- package/build/components/sidebar-navigation-screen-patterns/use-theme-patterns.js +2 -1
- package/build/components/sidebar-navigation-screen-patterns/use-theme-patterns.js.map +1 -1
- package/build/components/sidebar-navigation-screen-template/index.js +2 -2
- package/build/components/sidebar-navigation-screen-template/index.js.map +1 -1
- package/build/components/sidebar-navigation-screen-templates/index.js +1 -1
- package/build/components/sidebar-navigation-screen-templates/index.js.map +1 -1
- package/build/components/template-actions/index.js +7 -4
- package/build/components/template-actions/index.js.map +1 -1
- package/build/components/template-actions/rename-menu-item.js +3 -2
- package/build/components/template-actions/rename-menu-item.js.map +1 -1
- package/build/components/welcome-guide/styles.js +2 -2
- package/build/components/welcome-guide/styles.js.map +1 -1
- package/build/hooks/push-changes-to-global-styles/index.js +5 -37
- package/build/hooks/push-changes-to-global-styles/index.js.map +1 -1
- package/build/store/actions.js +29 -6
- package/build/store/actions.js.map +1 -1
- package/build/utils/constants.js +45 -2
- package/build/utils/constants.js.map +1 -1
- package/build/utils/is-template-removable.js +6 -1
- package/build/utils/is-template-removable.js.map +1 -1
- package/build/utils/is-template-revertable.js +6 -1
- package/build/utils/is-template-revertable.js.map +1 -1
- package/build-module/components/add-new-pattern/index.js +66 -5
- package/build-module/components/add-new-pattern/index.js.map +1 -1
- package/build-module/components/add-new-template/index.js +3 -2
- package/build-module/components/add-new-template/index.js.map +1 -1
- package/build-module/components/add-new-template/new-template.js +6 -1
- package/build-module/components/add-new-template/new-template.js.map +1 -1
- package/build-module/components/add-new-template/utils.js +6 -1
- package/build-module/components/add-new-template/utils.js.map +1 -1
- package/build-module/components/app/index.js +2 -7
- package/build-module/components/app/index.js.map +1 -1
- package/build-module/components/block-editor/back-button.js +3 -2
- package/build-module/components/block-editor/back-button.js.map +1 -1
- package/build-module/components/block-editor/editor-canvas.js +21 -17
- package/build-module/components/block-editor/editor-canvas.js.map +1 -1
- package/build-module/components/block-editor/site-editor-canvas.js +3 -5
- package/build-module/components/block-editor/site-editor-canvas.js.map +1 -1
- package/build-module/components/block-editor/use-site-editor-settings.js +8 -4
- package/build-module/components/block-editor/use-site-editor-settings.js.map +1 -1
- package/build-module/components/canvas-loader/index.js +18 -1
- package/build-module/components/canvas-loader/index.js.map +1 -1
- package/build-module/components/editor/index.js +3 -8
- package/build-module/components/editor/index.js.map +1 -1
- package/build-module/components/global-styles/dimensions-panel.js +5 -4
- package/build-module/components/global-styles/dimensions-panel.js.map +1 -1
- package/build-module/components/global-styles/font-families.js +58 -0
- package/build-module/components/global-styles/font-families.js.map +1 -0
- package/build-module/components/global-styles/font-family-item.js +40 -0
- package/build-module/components/global-styles/font-family-item.js.map +1 -0
- package/build-module/components/global-styles/font-library-modal/confirm-delete-dialog.js +23 -0
- package/build-module/components/global-styles/font-library-modal/confirm-delete-dialog.js.map +1 -0
- package/build-module/components/global-styles/font-library-modal/context.js +276 -0
- package/build-module/components/global-styles/font-library-modal/context.js.map +1 -0
- package/build-module/components/global-styles/font-library-modal/font-card.js +49 -0
- package/build-module/components/global-styles/font-library-modal/font-card.js.map +1 -0
- package/build-module/components/global-styles/font-library-modal/font-demo.js +62 -0
- package/build-module/components/global-styles/font-library-modal/font-demo.js.map +1 -0
- package/build-module/components/global-styles/font-library-modal/font-variant.js +42 -0
- package/build-module/components/global-styles/font-library-modal/font-variant.js.map +1 -0
- package/build-module/components/global-styles/font-library-modal/fonts-grid.js +47 -0
- package/build-module/components/global-styles/font-library-modal/fonts-grid.js.map +1 -0
- package/build-module/components/global-styles/font-library-modal/index.js +38 -0
- package/build-module/components/global-styles/font-library-modal/index.js.map +1 -0
- package/build-module/components/global-styles/font-library-modal/installed-fonts.js +120 -0
- package/build-module/components/global-styles/font-library-modal/installed-fonts.js.map +1 -0
- package/build-module/components/global-styles/font-library-modal/library-font-card.js +36 -0
- package/build-module/components/global-styles/font-library-modal/library-font-card.js.map +1 -0
- package/build-module/components/global-styles/font-library-modal/library-font-details.js +34 -0
- package/build-module/components/global-styles/font-library-modal/library-font-details.js.map +1 -0
- package/build-module/components/global-styles/font-library-modal/library-font-variant.js +50 -0
- package/build-module/components/global-styles/font-library-modal/library-font-variant.js.map +1 -0
- package/build-module/components/global-styles/font-library-modal/local-fonts.js +135 -0
- package/build-module/components/global-styles/font-library-modal/local-fonts.js.map +1 -0
- package/build-module/components/global-styles/font-library-modal/resolvers.js +28 -0
- package/build-module/components/global-styles/font-library-modal/resolvers.js.map +1 -0
- package/build-module/components/global-styles/font-library-modal/tab-layout.js +37 -0
- package/build-module/components/global-styles/font-library-modal/tab-layout.js.map +1 -0
- package/build-module/components/global-styles/font-library-modal/utils/constants.js +26 -0
- package/build-module/components/global-styles/font-library-modal/utils/constants.js.map +1 -0
- package/build-module/components/global-styles/font-library-modal/utils/get-intersecting-font-faces.js +52 -0
- package/build-module/components/global-styles/font-library-modal/utils/get-intersecting-font-faces.js.map +1 -0
- package/build-module/components/global-styles/font-library-modal/utils/index.js +190 -0
- package/build-module/components/global-styles/font-library-modal/utils/index.js.map +1 -0
- package/build-module/components/global-styles/font-library-modal/utils/make-families-from-faces.js +16 -0
- package/build-module/components/global-styles/font-library-modal/utils/make-families-from-faces.js.map +1 -0
- package/build-module/components/global-styles/font-library-modal/utils/toggleFont.js +86 -0
- package/build-module/components/global-styles/font-library-modal/utils/toggleFont.js.map +1 -0
- package/build-module/components/global-styles/global-styles-provider.js +7 -12
- package/build-module/components/global-styles/global-styles-provider.js.map +1 -1
- package/build-module/components/global-styles/screen-block.js +34 -21
- package/build-module/components/global-styles/screen-block.js.map +1 -1
- package/build-module/components/global-styles/screen-revisions/index.js +1 -3
- package/build-module/components/global-styles/screen-revisions/index.js.map +1 -1
- package/build-module/components/global-styles/screen-revisions/use-global-styles-revisions.js +0 -1
- package/build-module/components/global-styles/screen-revisions/use-global-styles-revisions.js.map +1 -1
- package/build-module/components/global-styles/screen-typography.js +6 -74
- package/build-module/components/global-styles/screen-typography.js.map +1 -1
- package/build-module/components/global-styles/style-variations-container.js +3 -5
- package/build-module/components/global-styles/style-variations-container.js.map +1 -1
- package/build-module/components/global-styles/typogrphy-elements.js +87 -0
- package/build-module/components/global-styles/typogrphy-elements.js.map +1 -0
- package/build-module/components/page-patterns/duplicate-menu-item.js +51 -16
- package/build-module/components/page-patterns/duplicate-menu-item.js.map +1 -1
- package/build-module/components/page-patterns/grid-item.js +47 -21
- package/build-module/components/page-patterns/grid-item.js.map +1 -1
- package/build-module/components/page-patterns/header.js +3 -7
- package/build-module/components/page-patterns/header.js.map +1 -1
- package/build-module/components/page-patterns/index.js +3 -3
- package/build-module/components/page-patterns/index.js.map +1 -1
- package/build-module/components/page-patterns/patterns-list.js +7 -7
- package/build-module/components/page-patterns/patterns-list.js.map +1 -1
- package/build-module/components/page-patterns/rename-menu-item.js +6 -5
- package/build-module/components/page-patterns/rename-menu-item.js.map +1 -1
- package/build-module/components/page-patterns/search-items.js +8 -2
- package/build-module/components/page-patterns/search-items.js.map +1 -1
- package/build-module/components/page-patterns/use-patterns.js +54 -28
- package/build-module/components/page-patterns/use-patterns.js.map +1 -1
- package/build-module/components/page-patterns/utils.js +0 -11
- package/build-module/components/page-patterns/utils.js.map +1 -1
- package/build-module/components/sidebar-edit-mode/page-panels/edit-template.js +34 -27
- package/build-module/components/sidebar-edit-mode/page-panels/edit-template.js.map +1 -1
- package/build-module/components/sidebar-edit-mode/page-panels/hooks.js +54 -0
- package/build-module/components/sidebar-edit-mode/page-panels/hooks.js.map +1 -0
- package/build-module/components/sidebar-edit-mode/page-panels/index.js +1 -4
- package/build-module/components/sidebar-edit-mode/page-panels/index.js.map +1 -1
- package/build-module/components/sidebar-edit-mode/page-panels/page-summary.js +2 -1
- package/build-module/components/sidebar-edit-mode/page-panels/page-summary.js.map +1 -1
- package/build-module/components/sidebar-edit-mode/page-panels/reset-default-template.js +49 -0
- package/build-module/components/sidebar-edit-mode/page-panels/reset-default-template.js.map +1 -0
- package/build-module/components/sidebar-edit-mode/page-panels/swap-template-button.js +85 -0
- package/build-module/components/sidebar-edit-mode/page-panels/swap-template-button.js.map +1 -0
- package/build-module/components/sidebar-edit-mode/template-panel/index.js +12 -10
- package/build-module/components/sidebar-edit-mode/template-panel/index.js.map +1 -1
- package/build-module/components/sidebar-edit-mode/template-panel/last-revision.js +8 -6
- package/build-module/components/sidebar-edit-mode/template-panel/last-revision.js.map +1 -1
- package/build-module/components/sidebar-edit-mode/template-panel/pattern-categories.js +202 -0
- package/build-module/components/sidebar-edit-mode/template-panel/pattern-categories.js.map +1 -0
- package/build-module/components/sidebar-navigation-screen/index.js +6 -4
- package/build-module/components/sidebar-navigation-screen/index.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-details-footer/index.js +32 -5
- package/build-module/components/sidebar-navigation-screen-details-footer/index.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-row.js +4 -2
- package/build-module/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-row.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-global-styles/index.js +6 -33
- package/build-module/components/sidebar-navigation-screen-global-styles/index.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-page/index.js +3 -3
- package/build-module/components/sidebar-navigation-screen-page/index.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-pattern/index.js +19 -9
- package/build-module/components/sidebar-navigation-screen-pattern/index.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-pattern/use-pattern-details.js +34 -5
- package/build-module/components/sidebar-navigation-screen-pattern/use-pattern-details.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-patterns/index.js +10 -38
- package/build-module/components/sidebar-navigation-screen-patterns/index.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-patterns/use-pattern-categories.js +38 -4
- package/build-module/components/sidebar-navigation-screen-patterns/use-pattern-categories.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-patterns/use-theme-patterns.js +3 -2
- package/build-module/components/sidebar-navigation-screen-patterns/use-theme-patterns.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-template/index.js +2 -2
- package/build-module/components/sidebar-navigation-screen-template/index.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-templates/index.js +1 -1
- package/build-module/components/sidebar-navigation-screen-templates/index.js.map +1 -1
- package/build-module/components/template-actions/index.js +7 -4
- package/build-module/components/template-actions/index.js.map +1 -1
- package/build-module/components/template-actions/rename-menu-item.js +3 -2
- package/build-module/components/template-actions/rename-menu-item.js.map +1 -1
- package/build-module/components/welcome-guide/styles.js +2 -2
- package/build-module/components/welcome-guide/styles.js.map +1 -1
- package/build-module/hooks/push-changes-to-global-styles/index.js +5 -37
- package/build-module/hooks/push-changes-to-global-styles/index.js.map +1 -1
- package/build-module/store/actions.js +30 -7
- package/build-module/store/actions.js.map +1 -1
- package/build-module/utils/constants.js +35 -1
- package/build-module/utils/constants.js.map +1 -1
- package/build-module/utils/is-template-removable.js +6 -1
- package/build-module/utils/is-template-removable.js.map +1 -1
- package/build-module/utils/is-template-revertable.js +6 -1
- package/build-module/utils/is-template-revertable.js.map +1 -1
- package/build-style/style-rtl.css +244 -37
- package/build-style/style.css +244 -37
- package/lib/inflate.js +4082 -0
- package/lib/lib-font.browser.js +3831 -0
- package/lib/unbrotli.js +2679 -0
- package/package.json +40 -40
- package/src/components/add-new-pattern/index.js +83 -5
- package/src/components/add-new-template/index.js +3 -2
- package/src/components/add-new-template/new-template.js +6 -1
- package/src/components/add-new-template/utils.js +12 -3
- package/src/components/app/index.js +9 -12
- package/src/components/block-editor/back-button.js +6 -2
- package/src/components/block-editor/editor-canvas.js +31 -19
- package/src/components/block-editor/site-editor-canvas.js +2 -10
- package/src/components/block-editor/style.scss +88 -1
- package/src/components/block-editor/use-site-editor-settings.js +26 -19
- package/src/components/canvas-loader/index.js +12 -1
- package/src/components/canvas-loader/style.scss +1 -1
- package/src/components/editor/index.js +3 -8
- package/src/components/global-styles/dimensions-panel.js +8 -4
- package/src/components/global-styles/font-families.js +71 -0
- package/src/components/global-styles/font-family-item.js +44 -0
- package/src/components/global-styles/font-library-modal/confirm-delete-dialog.js +33 -0
- package/src/components/global-styles/font-library-modal/context.js +347 -0
- package/src/components/global-styles/font-library-modal/font-card.js +70 -0
- package/src/components/global-styles/font-library-modal/font-demo.js +57 -0
- package/src/components/global-styles/font-library-modal/font-variant.js +53 -0
- package/src/components/global-styles/font-library-modal/fonts-grid.js +55 -0
- package/src/components/global-styles/font-library-modal/index.js +42 -0
- package/src/components/global-styles/font-library-modal/installed-fonts.js +174 -0
- package/src/components/global-styles/font-library-modal/library-font-card.js +40 -0
- package/src/components/global-styles/font-library-modal/library-font-details.js +46 -0
- package/src/components/global-styles/font-library-modal/library-font-variant.js +54 -0
- package/src/components/global-styles/font-library-modal/local-fonts.js +160 -0
- package/src/components/global-styles/font-library-modal/resolvers.js +29 -0
- package/src/components/global-styles/font-library-modal/style.scss +113 -0
- package/src/components/global-styles/font-library-modal/tab-layout.js +50 -0
- package/src/components/global-styles/font-library-modal/utils/constants.js +31 -0
- package/src/components/global-styles/font-library-modal/utils/get-intersecting-font-faces.js +58 -0
- package/src/components/global-styles/font-library-modal/utils/index.js +213 -0
- package/src/components/global-styles/font-library-modal/utils/make-families-from-faces.js +15 -0
- package/src/components/global-styles/font-library-modal/utils/test/getDisplaySrcFromFontFace.spec.js +53 -0
- package/src/components/global-styles/font-library-modal/utils/test/getFontFaceVariantName.spec.js +30 -0
- package/src/components/global-styles/font-library-modal/utils/test/getIntersectingFontFaces.spec.js +240 -0
- package/src/components/global-styles/font-library-modal/utils/test/getPreviewStyle.spec.js +121 -0
- package/src/components/global-styles/font-library-modal/utils/test/isUrlEncoded.spec.js +31 -0
- package/src/components/global-styles/font-library-modal/utils/test/makeFamiliesFromFaces.spec.js +57 -0
- package/src/components/global-styles/font-library-modal/utils/test/makeFormDataFromFontFamilies.spec.js +62 -0
- package/src/components/global-styles/font-library-modal/utils/test/mergeFontFaces.spec.js +56 -0
- package/src/components/global-styles/font-library-modal/utils/test/mergeFontFamilies.spec.js +108 -0
- package/src/components/global-styles/font-library-modal/utils/test/setUIValuesNeeded.spec.js +41 -0
- package/src/components/global-styles/font-library-modal/utils/test/toggleFont.spec.js +141 -0
- package/src/components/global-styles/font-library-modal/utils/toggleFont.js +90 -0
- package/src/components/global-styles/global-styles-provider.js +2 -7
- package/src/components/global-styles/screen-block.js +42 -20
- package/src/components/global-styles/screen-revisions/index.js +0 -2
- package/src/components/global-styles/screen-revisions/use-global-styles-revisions.js +0 -1
- package/src/components/global-styles/screen-typography.js +7 -95
- package/src/components/global-styles/style-variations-container.js +0 -2
- package/src/components/global-styles/typogrphy-elements.js +110 -0
- package/src/components/list/style.scss +2 -0
- package/src/components/page-patterns/duplicate-menu-item.js +63 -20
- package/src/components/page-patterns/grid-item.js +77 -30
- package/src/components/page-patterns/header.js +3 -12
- package/src/components/page-patterns/index.js +3 -3
- package/src/components/page-patterns/patterns-list.js +7 -7
- package/src/components/page-patterns/rename-menu-item.js +18 -7
- package/src/components/page-patterns/search-items.js +14 -2
- package/src/components/page-patterns/style.scss +1 -5
- package/src/components/page-patterns/use-patterns.js +67 -33
- package/src/components/page-patterns/utils.js +0 -19
- package/src/components/sidebar-edit-mode/page-panels/edit-template.js +47 -33
- package/src/components/sidebar-edit-mode/page-panels/hooks.js +83 -0
- package/src/components/sidebar-edit-mode/page-panels/index.js +0 -4
- package/src/components/sidebar-edit-mode/page-panels/page-summary.js +2 -0
- package/src/components/sidebar-edit-mode/page-panels/reset-default-template.js +44 -0
- package/src/components/sidebar-edit-mode/page-panels/style.scss +41 -10
- package/src/components/sidebar-edit-mode/page-panels/swap-template-button.js +82 -0
- package/src/components/sidebar-edit-mode/template-panel/index.js +28 -24
- package/src/components/sidebar-edit-mode/template-panel/last-revision.js +19 -15
- package/src/components/sidebar-edit-mode/template-panel/pattern-categories.js +270 -0
- package/src/components/sidebar-navigation-screen/index.js +4 -9
- package/src/components/sidebar-navigation-screen/style.scss +7 -1
- package/src/components/sidebar-navigation-screen-details-footer/index.js +38 -10
- package/src/components/sidebar-navigation-screen-details-footer/style.scss +10 -3
- package/src/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-row.js +2 -0
- package/src/components/sidebar-navigation-screen-global-styles/index.js +6 -44
- package/src/components/sidebar-navigation-screen-navigation-menus/style.scss +0 -4
- package/src/components/sidebar-navigation-screen-page/index.js +3 -3
- package/src/components/sidebar-navigation-screen-pattern/index.js +20 -7
- package/src/components/sidebar-navigation-screen-pattern/style.scss +0 -3
- package/src/components/sidebar-navigation-screen-pattern/use-pattern-details.js +46 -13
- package/src/components/sidebar-navigation-screen-patterns/index.js +14 -49
- package/src/components/sidebar-navigation-screen-patterns/use-pattern-categories.js +48 -6
- package/src/components/sidebar-navigation-screen-patterns/use-theme-patterns.js +3 -5
- package/src/components/sidebar-navigation-screen-template/index.js +2 -4
- package/src/components/sidebar-navigation-screen-templates/index.js +1 -1
- package/src/components/template-actions/index.js +14 -8
- package/src/components/template-actions/rename-menu-item.js +15 -4
- package/src/components/welcome-guide/styles.js +2 -2
- package/src/hooks/push-changes-to-global-styles/index.js +6 -49
- package/src/store/actions.js +39 -13
- package/src/store/test/actions.js +0 -1
- package/src/store/test/reducer.js +0 -1
- package/src/style.scss +1 -1
- package/src/utils/constants.js +38 -3
- package/src/utils/is-template-removable.js +8 -1
- package/src/utils/is-template-revertable.js +8 -1
- package/build/components/sidebar-navigation-screen-patterns/use-my-patterns.js +0 -30
- package/build/components/sidebar-navigation-screen-patterns/use-my-patterns.js.map +0 -1
- package/build-module/components/sidebar-navigation-screen-patterns/use-my-patterns.js +0 -23
- package/build-module/components/sidebar-navigation-screen-patterns/use-my-patterns.js.map +0 -1
- package/src/components/sidebar-navigation-screen-global-styles/style.scss +0 -12
- package/src/components/sidebar-navigation-screen-patterns/use-my-patterns.js +0 -24
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__","useDispatch","useSelect","__experimentalUseNavigator","useNavigator","__experimentalVStack","VStack","ExternalLink","__experimentalTruncate","Truncate","store","coreStore","useEntityRecord","decodeEntities","pencil","__unstableStripHTML","stripHTML","escapeAttribute","safeDecodeURIComponent","filterURLForDisplay","SidebarNavigationScreen","unlock","editSiteStore","SidebarButton","PageDetails","PageActions","SidebarNavigationScreenDetailsFooter","SidebarNavigationScreenPage","navigator","setCanvasMode","params","postId","record","featuredMediaAltText","featuredMediaSourceUrl","select","getEntityRecord","attachedMedia","featured_media","media_details","sizes","medium","source_url","alt_text","description","raw","featureImageAltText","title","rendered","createElement","actions","Fragment","toggleProps","as","onRemove","goTo","onClick","label","icon","meta","className","href","link","content","alignment","spacing","alt","src","excerpt","numberOfLines","id","footer","
|
|
1
|
+
{"version":3,"names":["__","useDispatch","useSelect","__experimentalUseNavigator","useNavigator","__experimentalVStack","VStack","ExternalLink","__experimentalTruncate","Truncate","store","coreStore","useEntityRecord","decodeEntities","pencil","__unstableStripHTML","stripHTML","escapeAttribute","safeDecodeURIComponent","filterURLForDisplay","SidebarNavigationScreen","unlock","editSiteStore","SidebarButton","PageDetails","PageActions","SidebarNavigationScreenDetailsFooter","SidebarNavigationScreenPage","navigator","setCanvasMode","params","postId","record","featuredMediaAltText","featuredMediaSourceUrl","select","getEntityRecord","attachedMedia","featured_media","media_details","sizes","medium","source_url","alt_text","description","raw","featureImageAltText","title","rendered","createElement","actions","Fragment","toggleProps","as","onRemove","goTo","onClick","label","icon","meta","className","href","link","content","alignment","spacing","alt","src","excerpt","numberOfLines","id","footer","modified"],"sources":["@wordpress/edit-site/src/components/sidebar-navigation-screen-page/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport {\n\t__experimentalUseNavigator as useNavigator,\n\t__experimentalVStack as VStack,\n\tExternalLink,\n\t__experimentalTruncate as Truncate,\n} from '@wordpress/components';\nimport { store as coreStore, useEntityRecord } from '@wordpress/core-data';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { pencil } from '@wordpress/icons';\nimport { __unstableStripHTML as stripHTML } from '@wordpress/dom';\nimport { escapeAttribute } from '@wordpress/escape-html';\nimport { safeDecodeURIComponent, filterURLForDisplay } from '@wordpress/url';\n\n/**\n * Internal dependencies\n */\nimport SidebarNavigationScreen from '../sidebar-navigation-screen';\nimport { unlock } from '../../lock-unlock';\nimport { store as editSiteStore } from '../../store';\nimport SidebarButton from '../sidebar-button';\nimport PageDetails from './page-details';\nimport PageActions from '../page-actions';\nimport SidebarNavigationScreenDetailsFooter from '../sidebar-navigation-screen-details-footer';\n\nexport default function SidebarNavigationScreenPage() {\n\tconst navigator = useNavigator();\n\tconst { setCanvasMode } = unlock( useDispatch( editSiteStore ) );\n\tconst {\n\t\tparams: { postId },\n\t} = useNavigator();\n\tconst { record } = useEntityRecord( 'postType', 'page', postId );\n\n\tconst { featuredMediaAltText, featuredMediaSourceUrl } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getEntityRecord } = select( coreStore );\n\t\t\t// Featured image.\n\t\t\tconst attachedMedia = record?.featured_media\n\t\t\t\t? getEntityRecord(\n\t\t\t\t\t\t'postType',\n\t\t\t\t\t\t'attachment',\n\t\t\t\t\t\trecord?.featured_media\n\t\t\t\t )\n\t\t\t\t: null;\n\n\t\t\treturn {\n\t\t\t\tfeaturedMediaSourceUrl:\n\t\t\t\t\tattachedMedia?.media_details.sizes?.medium?.source_url ||\n\t\t\t\t\tattachedMedia?.source_url,\n\t\t\t\tfeaturedMediaAltText: escapeAttribute(\n\t\t\t\t\tattachedMedia?.alt_text ||\n\t\t\t\t\t\tattachedMedia?.description?.raw ||\n\t\t\t\t\t\t''\n\t\t\t\t),\n\t\t\t};\n\t\t},\n\t\t[ record ]\n\t);\n\n\tconst featureImageAltText = featuredMediaAltText\n\t\t? decodeEntities( featuredMediaAltText )\n\t\t: decodeEntities( record?.title?.rendered || __( 'Featured image' ) );\n\n\treturn record ? (\n\t\t<SidebarNavigationScreen\n\t\t\ttitle={ decodeEntities(\n\t\t\t\trecord?.title?.rendered || __( '(no title)' )\n\t\t\t) }\n\t\t\tactions={\n\t\t\t\t<>\n\t\t\t\t\t<PageActions\n\t\t\t\t\t\tpostId={ postId }\n\t\t\t\t\t\ttoggleProps={ { as: SidebarButton } }\n\t\t\t\t\t\tonRemove={ () => {\n\t\t\t\t\t\t\tnavigator.goTo( '/page' );\n\t\t\t\t\t\t} }\n\t\t\t\t\t/>\n\t\t\t\t\t<SidebarButton\n\t\t\t\t\t\tonClick={ () => setCanvasMode( 'edit' ) }\n\t\t\t\t\t\tlabel={ __( 'Edit' ) }\n\t\t\t\t\t\ticon={ pencil }\n\t\t\t\t\t/>\n\t\t\t\t</>\n\t\t\t}\n\t\t\tmeta={\n\t\t\t\t<ExternalLink\n\t\t\t\t\tclassName=\"edit-site-sidebar-navigation-screen__page-link\"\n\t\t\t\t\thref={ record.link }\n\t\t\t\t>\n\t\t\t\t\t{ filterURLForDisplay(\n\t\t\t\t\t\tsafeDecodeURIComponent( record.link )\n\t\t\t\t\t) }\n\t\t\t\t</ExternalLink>\n\t\t\t}\n\t\t\tcontent={\n\t\t\t\t<>\n\t\t\t\t\t{ !! featuredMediaSourceUrl && (\n\t\t\t\t\t\t<VStack\n\t\t\t\t\t\t\tclassName=\"edit-site-sidebar-navigation-screen-page__featured-image-wrapper\"\n\t\t\t\t\t\t\talignment=\"left\"\n\t\t\t\t\t\t\tspacing={ 2 }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<div className=\"edit-site-sidebar-navigation-screen-page__featured-image has-image\">\n\t\t\t\t\t\t\t\t<img\n\t\t\t\t\t\t\t\t\talt={ featureImageAltText }\n\t\t\t\t\t\t\t\t\tsrc={ featuredMediaSourceUrl }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</VStack>\n\t\t\t\t\t) }\n\t\t\t\t\t{ !! record?.excerpt?.rendered && (\n\t\t\t\t\t\t<Truncate\n\t\t\t\t\t\t\tclassName=\"edit-site-sidebar-navigation-screen-page__excerpt\"\n\t\t\t\t\t\t\tnumberOfLines={ 3 }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ stripHTML( record.excerpt.rendered ) }\n\t\t\t\t\t\t</Truncate>\n\t\t\t\t\t) }\n\t\t\t\t\t<PageDetails id={ postId } />\n\t\t\t\t</>\n\t\t\t}\n\t\t\tfooter={\n\t\t\t\trecord?.modified ? (\n\t\t\t\t\t<SidebarNavigationScreenDetailsFooter record={ record } />\n\t\t\t\t) : null\n\t\t\t}\n\t\t/>\n\t) : null;\n}\n"],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { createElement } from "@wordpress/element";
|
|
1
|
+
import { createElement, Fragment } from "@wordpress/element";
|
|
2
2
|
/**
|
|
3
3
|
* WordPress dependencies
|
|
4
4
|
*/
|
|
@@ -17,17 +17,18 @@ import useInitEditedEntityFromURL from '../sync-state-with-url/use-init-edited-e
|
|
|
17
17
|
import usePatternDetails from './use-pattern-details';
|
|
18
18
|
import { store as editSiteStore } from '../../store';
|
|
19
19
|
import { unlock } from '../../lock-unlock';
|
|
20
|
+
import TemplateActions from '../template-actions';
|
|
20
21
|
export default function SidebarNavigationScreenPattern() {
|
|
22
|
+
const navigator = useNavigator();
|
|
21
23
|
const {
|
|
22
|
-
params
|
|
23
|
-
|
|
24
|
+
params: {
|
|
25
|
+
postType,
|
|
26
|
+
postId
|
|
27
|
+
}
|
|
28
|
+
} = navigator;
|
|
24
29
|
const {
|
|
25
30
|
categoryType
|
|
26
31
|
} = getQueryArgs(window.location.href);
|
|
27
|
-
const {
|
|
28
|
-
postType,
|
|
29
|
-
postId
|
|
30
|
-
} = params;
|
|
31
32
|
const {
|
|
32
33
|
setCanvasMode
|
|
33
34
|
} = unlock(useDispatch(editSiteStore));
|
|
@@ -39,11 +40,20 @@ export default function SidebarNavigationScreenPattern() {
|
|
|
39
40
|
// page and the back button should return them to that list page.
|
|
40
41
|
const backPath = !categoryType && postType === 'wp_template_part' ? '/wp_template_part/all' : '/patterns';
|
|
41
42
|
return createElement(SidebarNavigationScreen, {
|
|
42
|
-
actions: createElement(
|
|
43
|
+
actions: createElement(Fragment, null, createElement(TemplateActions, {
|
|
44
|
+
postType: postType,
|
|
45
|
+
postId: postId,
|
|
46
|
+
toggleProps: {
|
|
47
|
+
as: SidebarButton
|
|
48
|
+
},
|
|
49
|
+
onRemove: () => {
|
|
50
|
+
navigator.goTo(backPath);
|
|
51
|
+
}
|
|
52
|
+
}), createElement(SidebarButton, {
|
|
43
53
|
onClick: () => setCanvasMode('edit'),
|
|
44
54
|
label: __('Edit'),
|
|
45
55
|
icon: pencil
|
|
46
|
-
}),
|
|
56
|
+
})),
|
|
47
57
|
backPath: backPath,
|
|
48
58
|
...patternDetails
|
|
49
59
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__experimentalUseNavigator","useNavigator","useDispatch","__","pencil","getQueryArgs","SidebarButton","SidebarNavigationScreen","useInitEditedEntityFromURL","usePatternDetails","store","editSiteStore","unlock","SidebarNavigationScreenPattern","params","
|
|
1
|
+
{"version":3,"names":["__experimentalUseNavigator","useNavigator","useDispatch","__","pencil","getQueryArgs","SidebarButton","SidebarNavigationScreen","useInitEditedEntityFromURL","usePatternDetails","store","editSiteStore","unlock","TemplateActions","SidebarNavigationScreenPattern","navigator","params","postType","postId","categoryType","window","location","href","setCanvasMode","patternDetails","backPath","createElement","actions","Fragment","toggleProps","as","onRemove","goTo","onClick","label","icon"],"sources":["@wordpress/edit-site/src/components/sidebar-navigation-screen-pattern/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __experimentalUseNavigator as useNavigator } from '@wordpress/components';\nimport { useDispatch } from '@wordpress/data';\nimport { __ } from '@wordpress/i18n';\nimport { pencil } from '@wordpress/icons';\nimport { getQueryArgs } from '@wordpress/url';\n\n/**\n * Internal dependencies\n */\nimport SidebarButton from '../sidebar-button';\nimport SidebarNavigationScreen from '../sidebar-navigation-screen';\nimport useInitEditedEntityFromURL from '../sync-state-with-url/use-init-edited-entity-from-url';\nimport usePatternDetails from './use-pattern-details';\nimport { store as editSiteStore } from '../../store';\nimport { unlock } from '../../lock-unlock';\nimport TemplateActions from '../template-actions';\n\nexport default function SidebarNavigationScreenPattern() {\n\tconst navigator = useNavigator();\n\tconst {\n\t\tparams: { postType, postId },\n\t} = navigator;\n\tconst { categoryType } = getQueryArgs( window.location.href );\n\tconst { setCanvasMode } = unlock( useDispatch( editSiteStore ) );\n\n\tuseInitEditedEntityFromURL();\n\n\tconst patternDetails = usePatternDetails( postType, postId );\n\n\t// The absence of a category type in the query params for template parts\n\t// indicates the user has arrived at the template part via the \"manage all\"\n\t// page and the back button should return them to that list page.\n\tconst backPath =\n\t\t! categoryType && postType === 'wp_template_part'\n\t\t\t? '/wp_template_part/all'\n\t\t\t: '/patterns';\n\n\treturn (\n\t\t<SidebarNavigationScreen\n\t\t\tactions={\n\t\t\t\t<>\n\t\t\t\t\t<TemplateActions\n\t\t\t\t\t\tpostType={ postType }\n\t\t\t\t\t\tpostId={ postId }\n\t\t\t\t\t\ttoggleProps={ { as: SidebarButton } }\n\t\t\t\t\t\tonRemove={ () => {\n\t\t\t\t\t\t\tnavigator.goTo( backPath );\n\t\t\t\t\t\t} }\n\t\t\t\t\t/>\n\t\t\t\t\t<SidebarButton\n\t\t\t\t\t\tonClick={ () => setCanvasMode( 'edit' ) }\n\t\t\t\t\t\tlabel={ __( 'Edit' ) }\n\t\t\t\t\t\ticon={ pencil }\n\t\t\t\t\t/>\n\t\t\t\t</>\n\t\t\t}\n\t\t\tbackPath={ backPath }\n\t\t\t{ ...patternDetails }\n\t\t/>\n\t);\n}\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,0BAA0B,IAAIC,YAAY,QAAQ,uBAAuB;AAClF,SAASC,WAAW,QAAQ,iBAAiB;AAC7C,SAASC,EAAE,QAAQ,iBAAiB;AACpC,SAASC,MAAM,QAAQ,kBAAkB;AACzC,SAASC,YAAY,QAAQ,gBAAgB;;AAE7C;AACA;AACA;AACA,OAAOC,aAAa,MAAM,mBAAmB;AAC7C,OAAOC,uBAAuB,MAAM,8BAA8B;AAClE,OAAOC,0BAA0B,MAAM,wDAAwD;AAC/F,OAAOC,iBAAiB,MAAM,uBAAuB;AACrD,SAASC,KAAK,IAAIC,aAAa,QAAQ,aAAa;AACpD,SAASC,MAAM,QAAQ,mBAAmB;AAC1C,OAAOC,eAAe,MAAM,qBAAqB;AAEjD,eAAe,SAASC,8BAA8BA,CAAA,EAAG;EACxD,MAAMC,SAAS,GAAGd,YAAY,CAAC,CAAC;EAChC,MAAM;IACLe,MAAM,EAAE;MAAEC,QAAQ;MAAEC;IAAO;EAC5B,CAAC,GAAGH,SAAS;EACb,MAAM;IAAEI;EAAa,CAAC,GAAGd,YAAY,CAAEe,MAAM,CAACC,QAAQ,CAACC,IAAK,CAAC;EAC7D,MAAM;IAAEC;EAAc,CAAC,GAAGX,MAAM,CAAEV,WAAW,CAAES,aAAc,CAAE,CAAC;EAEhEH,0BAA0B,CAAC,CAAC;EAE5B,MAAMgB,cAAc,GAAGf,iBAAiB,CAAEQ,QAAQ,EAAEC,MAAO,CAAC;;EAE5D;EACA;EACA;EACA,MAAMO,QAAQ,GACb,CAAEN,YAAY,IAAIF,QAAQ,KAAK,kBAAkB,GAC9C,uBAAuB,GACvB,WAAW;EAEf,OACCS,aAAA,CAACnB,uBAAuB;IACvBoB,OAAO,EACND,aAAA,CAAAE,QAAA,QACCF,aAAA,CAACb,eAAe;MACfI,QAAQ,EAAGA,QAAU;MACrBC,MAAM,EAAGA,MAAQ;MACjBW,WAAW,EAAG;QAAEC,EAAE,EAAExB;MAAc,CAAG;MACrCyB,QAAQ,EAAGA,CAAA,KAAM;QAChBhB,SAAS,CAACiB,IAAI,CAAEP,QAAS,CAAC;MAC3B;IAAG,CACH,CAAC,EACFC,aAAA,CAACpB,aAAa;MACb2B,OAAO,EAAGA,CAAA,KAAMV,aAAa,CAAE,MAAO,CAAG;MACzCW,KAAK,EAAG/B,EAAE,CAAE,MAAO,CAAG;MACtBgC,IAAI,EAAG/B;IAAQ,CACf,CACA,CACF;IACDqB,QAAQ,EAAGA,QAAU;IAAA,GAChBD;EAAc,CACnB,CAAC;AAEJ"}
|
|
@@ -27,23 +27,37 @@ export default function usePatternDetails(postType, postId) {
|
|
|
27
27
|
record
|
|
28
28
|
} = useEditedEntityRecord(postType, postId);
|
|
29
29
|
const templatePartAreas = useSelect(select => select(editorStore).__experimentalGetDefaultTemplatePartAreas(), []);
|
|
30
|
-
const
|
|
30
|
+
const {
|
|
31
|
+
currentTheme,
|
|
32
|
+
userPatternCategories
|
|
33
|
+
} = useSelect(select => {
|
|
34
|
+
const {
|
|
35
|
+
getCurrentTheme,
|
|
36
|
+
getUserPatternCategories
|
|
37
|
+
} = select(coreStore);
|
|
38
|
+
return {
|
|
39
|
+
currentTheme: getCurrentTheme(),
|
|
40
|
+
userPatternCategories: getUserPatternCategories()
|
|
41
|
+
};
|
|
42
|
+
}, []);
|
|
31
43
|
const addedBy = useAddedBy(postType, postId);
|
|
32
44
|
const isAddedByActiveTheme = addedBy.type === 'theme' && record.theme === currentTheme?.stylesheet;
|
|
33
45
|
const title = getTitle();
|
|
34
46
|
let description = getDescription();
|
|
35
47
|
if (!description && addedBy.text) {
|
|
36
|
-
description = sprintf(
|
|
48
|
+
description = postType === 'wp_block' ? sprintf(
|
|
37
49
|
// translators: %s: pattern title e.g: "Header".
|
|
38
|
-
__('This is the %s pattern.'), getTitle())
|
|
50
|
+
__('This is the %s pattern.'), getTitle()) : sprintf(
|
|
51
|
+
// translators: %s: template part title e.g: "Header".
|
|
52
|
+
__('This is the %s template part.'), getTitle());
|
|
39
53
|
}
|
|
40
54
|
if (!description && postType === 'wp_block' && record?.title) {
|
|
41
55
|
description = sprintf(
|
|
42
56
|
// translators: %s: user created pattern title e.g. "Footer".
|
|
43
57
|
__('This is the %s pattern.'), record.title);
|
|
44
58
|
}
|
|
45
|
-
const footer =
|
|
46
|
-
|
|
59
|
+
const footer = record?.modified ? createElement(SidebarNavigationScreenDetailsFooter, {
|
|
60
|
+
record: record
|
|
47
61
|
}) : null;
|
|
48
62
|
const details = [];
|
|
49
63
|
if (postType === 'wp_block' || 'wp_template_part') {
|
|
@@ -51,6 +65,21 @@ export default function usePatternDetails(postType, postId) {
|
|
|
51
65
|
label: __('Syncing'),
|
|
52
66
|
value: record.wp_pattern_sync_status === 'unsynced' ? __('Not synced') : __('Fully synced')
|
|
53
67
|
});
|
|
68
|
+
if (record.wp_pattern_category?.length === 0) {
|
|
69
|
+
details.push({
|
|
70
|
+
label: __('Categories'),
|
|
71
|
+
value: __('Uncategorized')
|
|
72
|
+
});
|
|
73
|
+
}
|
|
74
|
+
if (record.wp_pattern_category?.length > 0) {
|
|
75
|
+
const patternCategories = new Map();
|
|
76
|
+
userPatternCategories.forEach(userCategory => patternCategories.set(userCategory.id, userCategory));
|
|
77
|
+
const categories = record.wp_pattern_category.filter(category => patternCategories.get(category)).map(category => patternCategories.get(category).label);
|
|
78
|
+
details.push({
|
|
79
|
+
label: __('Categories'),
|
|
80
|
+
value: categories.length > 0 ? categories.join(', ') : ''
|
|
81
|
+
});
|
|
82
|
+
}
|
|
54
83
|
}
|
|
55
84
|
if (postType === 'wp_template_part') {
|
|
56
85
|
const templatePartArea = templatePartAreas.find(area => area.area === record.area);
|
package/build-module/components/sidebar-navigation-screen-pattern/use-pattern-details.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["sentenceCase","__","sprintf","store","coreStore","editorStore","useSelect","useAddedBy","useEditedEntityRecord","useNavigationMenuContent","SidebarNavigationScreenDetailsFooter","SidebarNavigationScreenDetailsPanel","SidebarNavigationScreenDetailsPanelRow","SidebarNavigationScreenDetailsPanelLabel","SidebarNavigationScreenDetailsPanelValue","usePatternDetails","postType","postId","getDescription","getTitle","record","templatePartAreas","select","__experimentalGetDefaultTemplatePartAreas","currentTheme","getCurrentTheme","addedBy","isAddedByActiveTheme","type","theme","stylesheet","title","description","text","footer","modified","createElement","lastModifiedDateTime","details","push","label","value","wp_pattern_sync_status","templatePartArea","find","area","areaDetailValue","className","origin","has_theme_file","isCustomized","content","Fragment","length","spacing","map","key"],"sources":["@wordpress/edit-site/src/components/sidebar-navigation-screen-pattern/use-pattern-details.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport { sentenceCase } from 'change-case';\n\n/**\n * WordPress dependencies\n */\nimport { __, sprintf } from '@wordpress/i18n';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { store as editorStore } from '@wordpress/editor';\nimport { useSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport { useAddedBy } from '../list/added-by';\nimport useEditedEntityRecord from '../use-edited-entity-record';\nimport useNavigationMenuContent from './use-navigation-menu-content';\nimport SidebarNavigationScreenDetailsFooter from '../sidebar-navigation-screen-details-footer';\nimport {\n\tSidebarNavigationScreenDetailsPanel,\n\tSidebarNavigationScreenDetailsPanelRow,\n\tSidebarNavigationScreenDetailsPanelLabel,\n\tSidebarNavigationScreenDetailsPanelValue,\n} from '../sidebar-navigation-screen-details-panel';\n\nexport default function usePatternDetails( postType, postId ) {\n\tconst { getDescription, getTitle, record } = useEditedEntityRecord(\n\t\tpostType,\n\t\tpostId\n\t);\n\tconst templatePartAreas = useSelect(\n\t\t( select ) =>\n\t\t\tselect( editorStore ).__experimentalGetDefaultTemplatePartAreas(),\n\t\t[]\n\t);\n\tconst currentTheme = useSelect(\n\t\t( select ) => select( coreStore ).getCurrentTheme(),\n\t\t[]\n\t);\n\tconst addedBy = useAddedBy( postType, postId );\n\tconst isAddedByActiveTheme =\n\t\taddedBy.type === 'theme' && record.theme === currentTheme?.stylesheet;\n\tconst title = getTitle();\n\tlet description = getDescription();\n\n\tif ( ! description && addedBy.text ) {\n\t\tdescription = sprintf(\n\t\t\t// translators: %s: pattern title e.g: \"Header\".\n\t\t\t__( 'This is the %s pattern.' ),\n\t\t\tgetTitle()\n\t\t);\n\t}\n\n\tif ( ! description && postType === 'wp_block' && record?.title ) {\n\t\tdescription = sprintf(\n\t\t\t// translators: %s: user created pattern title e.g. \"Footer\".\n\t\t\t__( 'This is the %s pattern.' ),\n\t\t\trecord.title\n\t\t);\n\t}\n\n\tconst footer = !! record?.modified ? (\n\t\t<SidebarNavigationScreenDetailsFooter\n\t\t\tlastModifiedDateTime={ record.modified }\n\t\t/>\n\t) : null;\n\n\tconst details = [];\n\n\tif ( postType === 'wp_block' || 'wp_template_part' ) {\n\t\tdetails.push( {\n\t\t\tlabel: __( 'Syncing' ),\n\t\t\tvalue:\n\t\t\t\trecord.wp_pattern_sync_status === 'unsynced'\n\t\t\t\t\t? __( 'Not synced' )\n\t\t\t\t\t: __( 'Fully synced' ),\n\t\t} );\n\t}\n\n\tif ( postType === 'wp_template_part' ) {\n\t\tconst templatePartArea = templatePartAreas.find(\n\t\t\t( area ) => area.area === record.area\n\t\t);\n\n\t\tlet areaDetailValue = templatePartArea?.label;\n\n\t\tif ( ! areaDetailValue ) {\n\t\t\tareaDetailValue = record.area\n\t\t\t\t? sprintf(\n\t\t\t\t\t\t// translators: %s: Sentenced cased template part area e.g: \"My custom area\".\n\t\t\t\t\t\t__( '%s (removed)' ),\n\t\t\t\t\t\tsentenceCase( record.area )\n\t\t\t\t )\n\t\t\t\t: __( 'None' );\n\t\t}\n\n\t\tdetails.push( { label: __( 'Area' ), value: areaDetailValue } );\n\t}\n\n\tif (\n\t\tpostType === 'wp_template_part' &&\n\t\taddedBy.text &&\n\t\t! isAddedByActiveTheme\n\t) {\n\t\tdetails.push( {\n\t\t\tlabel: __( 'Added by' ),\n\t\t\tvalue: (\n\t\t\t\t<span className=\"edit-site-sidebar-navigation-screen-pattern__added-by-description-author\">\n\t\t\t\t\t{ addedBy.text }\n\t\t\t\t</span>\n\t\t\t),\n\t\t} );\n\t}\n\n\tif (\n\t\tpostType === 'wp_template_part' &&\n\t\taddedBy.text &&\n\t\t( record.origin === 'plugin' || record.has_theme_file === true )\n\t) {\n\t\tdetails.push( {\n\t\t\tlabel: __( 'Customized' ),\n\t\t\tvalue: (\n\t\t\t\t<span className=\"edit-site-sidebar-navigation-screen-pattern__added-by-description-customized\">\n\t\t\t\t\t{ addedBy.isCustomized ? __( 'Yes' ) : __( 'No' ) }\n\t\t\t\t</span>\n\t\t\t),\n\t\t} );\n\t}\n\n\tconst content = (\n\t\t<>\n\t\t\t{ useNavigationMenuContent( postType, postId ) }\n\t\t\t{ !! details.length && (\n\t\t\t\t<SidebarNavigationScreenDetailsPanel\n\t\t\t\t\tspacing={ 5 }\n\t\t\t\t\ttitle={ __( 'Details' ) }\n\t\t\t\t>\n\t\t\t\t\t{ details.map( ( { label, value } ) => (\n\t\t\t\t\t\t<SidebarNavigationScreenDetailsPanelRow key={ label }>\n\t\t\t\t\t\t\t<SidebarNavigationScreenDetailsPanelLabel>\n\t\t\t\t\t\t\t\t{ label }\n\t\t\t\t\t\t\t</SidebarNavigationScreenDetailsPanelLabel>\n\t\t\t\t\t\t\t<SidebarNavigationScreenDetailsPanelValue>\n\t\t\t\t\t\t\t\t{ value }\n\t\t\t\t\t\t\t</SidebarNavigationScreenDetailsPanelValue>\n\t\t\t\t\t\t</SidebarNavigationScreenDetailsPanelRow>\n\t\t\t\t\t) ) }\n\t\t\t\t</SidebarNavigationScreenDetailsPanel>\n\t\t\t) }\n\t\t</>\n\t);\n\n\treturn { title, description, content, footer };\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["sentenceCase","__","sprintf","store","coreStore","editorStore","useSelect","useAddedBy","useEditedEntityRecord","useNavigationMenuContent","SidebarNavigationScreenDetailsFooter","SidebarNavigationScreenDetailsPanel","SidebarNavigationScreenDetailsPanelRow","SidebarNavigationScreenDetailsPanelLabel","SidebarNavigationScreenDetailsPanelValue","usePatternDetails","postType","postId","getDescription","getTitle","record","templatePartAreas","select","__experimentalGetDefaultTemplatePartAreas","currentTheme","userPatternCategories","getCurrentTheme","getUserPatternCategories","addedBy","isAddedByActiveTheme","type","theme","stylesheet","title","description","text","footer","modified","createElement","details","push","label","value","wp_pattern_sync_status","wp_pattern_category","length","patternCategories","Map","forEach","userCategory","set","id","categories","filter","category","get","map","join","templatePartArea","find","area","areaDetailValue","className","origin","has_theme_file","isCustomized","content","Fragment","spacing","key"],"sources":["@wordpress/edit-site/src/components/sidebar-navigation-screen-pattern/use-pattern-details.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport { sentenceCase } from 'change-case';\n\n/**\n * WordPress dependencies\n */\nimport { __, sprintf } from '@wordpress/i18n';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { store as editorStore } from '@wordpress/editor';\nimport { useSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport { useAddedBy } from '../list/added-by';\nimport useEditedEntityRecord from '../use-edited-entity-record';\nimport useNavigationMenuContent from './use-navigation-menu-content';\nimport SidebarNavigationScreenDetailsFooter from '../sidebar-navigation-screen-details-footer';\nimport {\n\tSidebarNavigationScreenDetailsPanel,\n\tSidebarNavigationScreenDetailsPanelRow,\n\tSidebarNavigationScreenDetailsPanelLabel,\n\tSidebarNavigationScreenDetailsPanelValue,\n} from '../sidebar-navigation-screen-details-panel';\n\nexport default function usePatternDetails( postType, postId ) {\n\tconst { getDescription, getTitle, record } = useEditedEntityRecord(\n\t\tpostType,\n\t\tpostId\n\t);\n\tconst templatePartAreas = useSelect(\n\t\t( select ) =>\n\t\t\tselect( editorStore ).__experimentalGetDefaultTemplatePartAreas(),\n\t\t[]\n\t);\n\tconst { currentTheme, userPatternCategories } = useSelect( ( select ) => {\n\t\tconst { getCurrentTheme, getUserPatternCategories } =\n\t\t\tselect( coreStore );\n\n\t\treturn {\n\t\t\tcurrentTheme: getCurrentTheme(),\n\t\t\tuserPatternCategories: getUserPatternCategories(),\n\t\t};\n\t}, [] );\n\n\tconst addedBy = useAddedBy( postType, postId );\n\tconst isAddedByActiveTheme =\n\t\taddedBy.type === 'theme' && record.theme === currentTheme?.stylesheet;\n\tconst title = getTitle();\n\tlet description = getDescription();\n\n\tif ( ! description && addedBy.text ) {\n\t\tdescription =\n\t\t\tpostType === 'wp_block'\n\t\t\t\t? sprintf(\n\t\t\t\t\t\t// translators: %s: pattern title e.g: \"Header\".\n\t\t\t\t\t\t__( 'This is the %s pattern.' ),\n\t\t\t\t\t\tgetTitle()\n\t\t\t\t )\n\t\t\t\t: sprintf(\n\t\t\t\t\t\t// translators: %s: template part title e.g: \"Header\".\n\t\t\t\t\t\t__( 'This is the %s template part.' ),\n\t\t\t\t\t\tgetTitle()\n\t\t\t\t );\n\t}\n\n\tif ( ! description && postType === 'wp_block' && record?.title ) {\n\t\tdescription = sprintf(\n\t\t\t// translators: %s: user created pattern title e.g. \"Footer\".\n\t\t\t__( 'This is the %s pattern.' ),\n\t\t\trecord.title\n\t\t);\n\t}\n\n\tconst footer = record?.modified ? (\n\t\t<SidebarNavigationScreenDetailsFooter record={ record } />\n\t) : null;\n\n\tconst details = [];\n\n\tif ( postType === 'wp_block' || 'wp_template_part' ) {\n\t\tdetails.push( {\n\t\t\tlabel: __( 'Syncing' ),\n\t\t\tvalue:\n\t\t\t\trecord.wp_pattern_sync_status === 'unsynced'\n\t\t\t\t\t? __( 'Not synced' )\n\t\t\t\t\t: __( 'Fully synced' ),\n\t\t} );\n\n\t\tif ( record.wp_pattern_category?.length === 0 ) {\n\t\t\tdetails.push( {\n\t\t\t\tlabel: __( 'Categories' ),\n\t\t\t\tvalue: __( 'Uncategorized' ),\n\t\t\t} );\n\t\t}\n\t\tif ( record.wp_pattern_category?.length > 0 ) {\n\t\t\tconst patternCategories = new Map();\n\t\t\tuserPatternCategories.forEach( ( userCategory ) =>\n\t\t\t\tpatternCategories.set( userCategory.id, userCategory )\n\t\t\t);\n\n\t\t\tconst categories = record.wp_pattern_category\n\t\t\t\t.filter( ( category ) => patternCategories.get( category ) )\n\t\t\t\t.map( ( category ) => patternCategories.get( category ).label );\n\n\t\t\tdetails.push( {\n\t\t\t\tlabel: __( 'Categories' ),\n\t\t\t\tvalue: categories.length > 0 ? categories.join( ', ' ) : '',\n\t\t\t} );\n\t\t}\n\t}\n\n\tif ( postType === 'wp_template_part' ) {\n\t\tconst templatePartArea = templatePartAreas.find(\n\t\t\t( area ) => area.area === record.area\n\t\t);\n\n\t\tlet areaDetailValue = templatePartArea?.label;\n\n\t\tif ( ! areaDetailValue ) {\n\t\t\tareaDetailValue = record.area\n\t\t\t\t? sprintf(\n\t\t\t\t\t\t// translators: %s: Sentenced cased template part area e.g: \"My custom area\".\n\t\t\t\t\t\t__( '%s (removed)' ),\n\t\t\t\t\t\tsentenceCase( record.area )\n\t\t\t\t )\n\t\t\t\t: __( 'None' );\n\t\t}\n\n\t\tdetails.push( { label: __( 'Area' ), value: areaDetailValue } );\n\t}\n\n\tif (\n\t\tpostType === 'wp_template_part' &&\n\t\taddedBy.text &&\n\t\t! isAddedByActiveTheme\n\t) {\n\t\tdetails.push( {\n\t\t\tlabel: __( 'Added by' ),\n\t\t\tvalue: (\n\t\t\t\t<span className=\"edit-site-sidebar-navigation-screen-pattern__added-by-description-author\">\n\t\t\t\t\t{ addedBy.text }\n\t\t\t\t</span>\n\t\t\t),\n\t\t} );\n\t}\n\n\tif (\n\t\tpostType === 'wp_template_part' &&\n\t\taddedBy.text &&\n\t\t( record.origin === 'plugin' || record.has_theme_file === true )\n\t) {\n\t\tdetails.push( {\n\t\t\tlabel: __( 'Customized' ),\n\t\t\tvalue: (\n\t\t\t\t<span className=\"edit-site-sidebar-navigation-screen-pattern__added-by-description-customized\">\n\t\t\t\t\t{ addedBy.isCustomized ? __( 'Yes' ) : __( 'No' ) }\n\t\t\t\t</span>\n\t\t\t),\n\t\t} );\n\t}\n\n\tconst content = (\n\t\t<>\n\t\t\t{ useNavigationMenuContent( postType, postId ) }\n\t\t\t{ !! details.length && (\n\t\t\t\t<SidebarNavigationScreenDetailsPanel\n\t\t\t\t\tspacing={ 5 }\n\t\t\t\t\ttitle={ __( 'Details' ) }\n\t\t\t\t>\n\t\t\t\t\t{ details.map( ( { label, value } ) => (\n\t\t\t\t\t\t<SidebarNavigationScreenDetailsPanelRow key={ label }>\n\t\t\t\t\t\t\t<SidebarNavigationScreenDetailsPanelLabel>\n\t\t\t\t\t\t\t\t{ label }\n\t\t\t\t\t\t\t</SidebarNavigationScreenDetailsPanelLabel>\n\t\t\t\t\t\t\t<SidebarNavigationScreenDetailsPanelValue>\n\t\t\t\t\t\t\t\t{ value }\n\t\t\t\t\t\t\t</SidebarNavigationScreenDetailsPanelValue>\n\t\t\t\t\t\t</SidebarNavigationScreenDetailsPanelRow>\n\t\t\t\t\t) ) }\n\t\t\t\t</SidebarNavigationScreenDetailsPanel>\n\t\t\t) }\n\t\t</>\n\t);\n\n\treturn { title, description, content, footer };\n}\n"],"mappings":"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"}
|
|
@@ -2,12 +2,12 @@ import { createElement, Fragment } from "@wordpress/element";
|
|
|
2
2
|
/**
|
|
3
3
|
* WordPress dependencies
|
|
4
4
|
*/
|
|
5
|
-
import { __experimentalItemGroup as ItemGroup, __experimentalItem as Item,
|
|
5
|
+
import { __experimentalItemGroup as ItemGroup, __experimentalItem as Item, __experimentalHeading as Heading } from '@wordpress/components';
|
|
6
6
|
import { useViewportMatch } from '@wordpress/compose';
|
|
7
7
|
import { getTemplatePartIcon } from '@wordpress/editor';
|
|
8
|
-
import { __
|
|
8
|
+
import { __ } from '@wordpress/i18n';
|
|
9
9
|
import { getQueryArgs } from '@wordpress/url';
|
|
10
|
-
import { file
|
|
10
|
+
import { file } from '@wordpress/icons';
|
|
11
11
|
|
|
12
12
|
/**
|
|
13
13
|
* Internal dependencies
|
|
@@ -16,10 +16,9 @@ import AddNewPattern from '../add-new-pattern';
|
|
|
16
16
|
import SidebarNavigationItem from '../sidebar-navigation-item';
|
|
17
17
|
import SidebarNavigationScreen from '../sidebar-navigation-screen';
|
|
18
18
|
import CategoryItem from './category-item';
|
|
19
|
-
import {
|
|
19
|
+
import { PATTERN_DEFAULT_CATEGORY, PATTERN_TYPES } from '../../utils/constants';
|
|
20
20
|
import { useLink } from '../routes/link';
|
|
21
21
|
import usePatternCategories from './use-pattern-categories';
|
|
22
|
-
import useMyPatterns from './use-my-patterns';
|
|
23
22
|
import useTemplatePartAreas from './use-template-part-areas';
|
|
24
23
|
function TemplatePartGroup({
|
|
25
24
|
areas,
|
|
@@ -45,7 +44,7 @@ function TemplatePartGroup({
|
|
|
45
44
|
isActive: currentArea === area && currentType === 'wp_template_part'
|
|
46
45
|
}))));
|
|
47
46
|
}
|
|
48
|
-
function
|
|
47
|
+
function PatternCategoriesGroup({
|
|
49
48
|
categories,
|
|
50
49
|
currentCategory,
|
|
51
50
|
currentType
|
|
@@ -55,25 +54,11 @@ function ThemePatternsGroup({
|
|
|
55
54
|
}, categories.map(category => createElement(CategoryItem, {
|
|
56
55
|
key: category.name,
|
|
57
56
|
count: category.count,
|
|
58
|
-
label:
|
|
59
|
-
justify: "left",
|
|
60
|
-
align: "center",
|
|
61
|
-
gap: 0
|
|
62
|
-
}, category.label, createElement(Tooltip, {
|
|
63
|
-
position: "top center",
|
|
64
|
-
text: sprintf(
|
|
65
|
-
// translators: %s: The pattern category name.
|
|
66
|
-
'"%s" patterns cannot be edited.', category.label)
|
|
67
|
-
}, createElement("span", {
|
|
68
|
-
className: "edit-site-sidebar-navigation-screen-pattern__lock-icon"
|
|
69
|
-
}, createElement(Icon, {
|
|
70
|
-
icon: lockSmall,
|
|
71
|
-
size: 24
|
|
72
|
-
})))),
|
|
57
|
+
label: category.label,
|
|
73
58
|
icon: file,
|
|
74
59
|
id: category.name,
|
|
75
60
|
type: "pattern",
|
|
76
|
-
isActive: currentCategory === `${category.name}` && currentType ===
|
|
61
|
+
isActive: currentCategory === `${category.name}` && (currentType === PATTERN_TYPES.theme || currentType === PATTERN_TYPES.user)
|
|
77
62
|
}))));
|
|
78
63
|
}
|
|
79
64
|
export default function SidebarNavigationScreenPatterns() {
|
|
@@ -82,8 +67,8 @@ export default function SidebarNavigationScreenPatterns() {
|
|
|
82
67
|
categoryType,
|
|
83
68
|
categoryId
|
|
84
69
|
} = getQueryArgs(window.location.href);
|
|
85
|
-
const currentCategory = categoryId ||
|
|
86
|
-
const currentType = categoryType ||
|
|
70
|
+
const currentCategory = categoryId || PATTERN_DEFAULT_CATEGORY;
|
|
71
|
+
const currentType = categoryType || PATTERN_TYPES.user;
|
|
87
72
|
const {
|
|
88
73
|
templatePartAreas,
|
|
89
74
|
hasTemplateParts,
|
|
@@ -93,9 +78,6 @@ export default function SidebarNavigationScreenPatterns() {
|
|
|
93
78
|
patternCategories,
|
|
94
79
|
hasPatterns
|
|
95
80
|
} = usePatternCategories();
|
|
96
|
-
const {
|
|
97
|
-
myPatterns
|
|
98
|
-
} = useMyPatterns();
|
|
99
81
|
const templatePartsLink = useLink({
|
|
100
82
|
path: '/wp_template_part/all'
|
|
101
83
|
});
|
|
@@ -114,17 +96,7 @@ export default function SidebarNavigationScreenPatterns() {
|
|
|
114
96
|
footer: footer,
|
|
115
97
|
content: createElement(Fragment, null, isLoading && __('Loading patterns…'), !isLoading && createElement(Fragment, null, !hasTemplateParts && !hasPatterns && createElement(ItemGroup, {
|
|
116
98
|
className: "edit-site-sidebar-navigation-screen-patterns__group"
|
|
117
|
-
}, createElement(Item, null, __('No template parts or patterns found'))), createElement(
|
|
118
|
-
className: "edit-site-sidebar-navigation-screen-patterns__group"
|
|
119
|
-
}, createElement(CategoryItem, {
|
|
120
|
-
key: myPatterns.name,
|
|
121
|
-
count: !myPatterns.count ? '0' : myPatterns.count,
|
|
122
|
-
label: myPatterns.label,
|
|
123
|
-
icon: starFilled,
|
|
124
|
-
id: myPatterns.name,
|
|
125
|
-
type: "wp_block",
|
|
126
|
-
isActive: currentCategory === `${myPatterns.name}` && currentType === 'wp_block'
|
|
127
|
-
})), hasPatterns && createElement(ThemePatternsGroup, {
|
|
99
|
+
}, createElement(Item, null, __('No template parts or patterns found'))), hasPatterns && createElement(PatternCategoriesGroup, {
|
|
128
100
|
categories: patternCategories,
|
|
129
101
|
currentCategory: currentCategory,
|
|
130
102
|
currentType: currentType
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__experimentalItemGroup","ItemGroup","__experimentalItem","Item","Flex","Icon","Tooltip","__experimentalHeading","Heading","useViewportMatch","getTemplatePartIcon","__","sprintf","getQueryArgs","file","starFilled","lockSmall","AddNewPattern","SidebarNavigationItem","SidebarNavigationScreen","CategoryItem","DEFAULT_CATEGORY","DEFAULT_TYPE","useLink","usePatternCategories","useMyPatterns","useTemplatePartAreas","TemplatePartGroup","areas","currentArea","currentType","createElement","Fragment","className","level","Object","entries","map","area","label","templateParts","key","count","length","icon","id","type","isActive","ThemePatternsGroup","categories","currentCategory","category","name","justify","align","gap","position","text","size","SidebarNavigationScreenPatterns","isMobileViewport","categoryType","categoryId","window","location","href","templatePartAreas","hasTemplateParts","isLoading","patternCategories","hasPatterns","myPatterns","templatePartsLink","path","footer","as","withChevron","undefined","title","description","actions","content"],"sources":["@wordpress/edit-site/src/components/sidebar-navigation-screen-patterns/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalItemGroup as ItemGroup,\n\t__experimentalItem as Item,\n\tFlex,\n\tIcon,\n\tTooltip,\n\t__experimentalHeading as Heading,\n} from '@wordpress/components';\nimport { useViewportMatch } from '@wordpress/compose';\nimport { getTemplatePartIcon } from '@wordpress/editor';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { getQueryArgs } from '@wordpress/url';\nimport { file, starFilled, lockSmall } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport AddNewPattern from '../add-new-pattern';\nimport SidebarNavigationItem from '../sidebar-navigation-item';\nimport SidebarNavigationScreen from '../sidebar-navigation-screen';\nimport CategoryItem from './category-item';\nimport { DEFAULT_CATEGORY, DEFAULT_TYPE } from '../page-patterns/utils';\nimport { useLink } from '../routes/link';\nimport usePatternCategories from './use-pattern-categories';\nimport useMyPatterns from './use-my-patterns';\nimport useTemplatePartAreas from './use-template-part-areas';\n\nfunction TemplatePartGroup( { areas, currentArea, currentType } ) {\n\treturn (\n\t\t<>\n\t\t\t<div className=\"edit-site-sidebar-navigation-screen-patterns__group-header\">\n\t\t\t\t<Heading level={ 2 }>{ __( 'Template parts' ) }</Heading>\n\t\t\t</div>\n\t\t\t<ItemGroup className=\"edit-site-sidebar-navigation-screen-patterns__group\">\n\t\t\t\t{ Object.entries( areas ).map(\n\t\t\t\t\t( [ area, { label, templateParts } ] ) => (\n\t\t\t\t\t\t<CategoryItem\n\t\t\t\t\t\t\tkey={ area }\n\t\t\t\t\t\t\tcount={ templateParts?.length }\n\t\t\t\t\t\t\ticon={ getTemplatePartIcon( area ) }\n\t\t\t\t\t\t\tlabel={ label }\n\t\t\t\t\t\t\tid={ area }\n\t\t\t\t\t\t\ttype=\"wp_template_part\"\n\t\t\t\t\t\t\tisActive={\n\t\t\t\t\t\t\t\tcurrentArea === area &&\n\t\t\t\t\t\t\t\tcurrentType === 'wp_template_part'\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</ItemGroup>\n\t\t</>\n\t);\n}\n\nfunction ThemePatternsGroup( { categories, currentCategory, currentType } ) {\n\treturn (\n\t\t<>\n\t\t\t<ItemGroup className=\"edit-site-sidebar-navigation-screen-patterns__group\">\n\t\t\t\t{ categories.map( ( category ) => (\n\t\t\t\t\t<CategoryItem\n\t\t\t\t\t\tkey={ category.name }\n\t\t\t\t\t\tcount={ category.count }\n\t\t\t\t\t\tlabel={\n\t\t\t\t\t\t\t<Flex justify=\"left\" align=\"center\" gap={ 0 }>\n\t\t\t\t\t\t\t\t{ category.label }\n\t\t\t\t\t\t\t\t<Tooltip\n\t\t\t\t\t\t\t\t\tposition=\"top center\"\n\t\t\t\t\t\t\t\t\ttext={ sprintf(\n\t\t\t\t\t\t\t\t\t\t// translators: %s: The pattern category name.\n\t\t\t\t\t\t\t\t\t\t'\"%s\" patterns cannot be edited.',\n\t\t\t\t\t\t\t\t\t\tcategory.label\n\t\t\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<span className=\"edit-site-sidebar-navigation-screen-pattern__lock-icon\">\n\t\t\t\t\t\t\t\t\t\t<Icon icon={ lockSmall } size={ 24 } />\n\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t</Tooltip>\n\t\t\t\t\t\t\t</Flex>\n\t\t\t\t\t\t}\n\t\t\t\t\t\ticon={ file }\n\t\t\t\t\t\tid={ category.name }\n\t\t\t\t\t\ttype=\"pattern\"\n\t\t\t\t\t\tisActive={\n\t\t\t\t\t\t\tcurrentCategory === `${ category.name }` &&\n\t\t\t\t\t\t\tcurrentType === 'pattern'\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t) ) }\n\t\t\t</ItemGroup>\n\t\t</>\n\t);\n}\n\nexport default function SidebarNavigationScreenPatterns() {\n\tconst isMobileViewport = useViewportMatch( 'medium', '<' );\n\tconst { categoryType, categoryId } = getQueryArgs( window.location.href );\n\tconst currentCategory = categoryId || DEFAULT_CATEGORY;\n\tconst currentType = categoryType || DEFAULT_TYPE;\n\n\tconst { templatePartAreas, hasTemplateParts, isLoading } =\n\t\tuseTemplatePartAreas();\n\tconst { patternCategories, hasPatterns } = usePatternCategories();\n\tconst { myPatterns } = useMyPatterns();\n\n\tconst templatePartsLink = useLink( { path: '/wp_template_part/all' } );\n\tconst footer = ! isMobileViewport ? (\n\t\t<ItemGroup>\n\t\t\t<SidebarNavigationItem\n\t\t\t\tas=\"a\"\n\t\t\t\thref=\"edit.php?post_type=wp_block\"\n\t\t\t\twithChevron\n\t\t\t>\n\t\t\t\t{ __( 'Manage all of my patterns' ) }\n\t\t\t</SidebarNavigationItem>\n\t\t\t<SidebarNavigationItem withChevron { ...templatePartsLink }>\n\t\t\t\t{ __( 'Manage all template parts' ) }\n\t\t\t</SidebarNavigationItem>\n\t\t</ItemGroup>\n\t) : undefined;\n\n\treturn (\n\t\t<SidebarNavigationScreen\n\t\t\ttitle={ __( 'Patterns' ) }\n\t\t\tdescription={ __(\n\t\t\t\t'Manage what patterns are available when editing the site.'\n\t\t\t) }\n\t\t\tactions={ <AddNewPattern /> }\n\t\t\tfooter={ footer }\n\t\t\tcontent={\n\t\t\t\t<>\n\t\t\t\t\t{ isLoading && __( 'Loading patterns…' ) }\n\t\t\t\t\t{ ! isLoading && (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t{ ! hasTemplateParts && ! hasPatterns && (\n\t\t\t\t\t\t\t\t<ItemGroup className=\"edit-site-sidebar-navigation-screen-patterns__group\">\n\t\t\t\t\t\t\t\t\t<Item>\n\t\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t\t\t'No template parts or patterns found'\n\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t</Item>\n\t\t\t\t\t\t\t\t</ItemGroup>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t<ItemGroup className=\"edit-site-sidebar-navigation-screen-patterns__group\">\n\t\t\t\t\t\t\t\t<CategoryItem\n\t\t\t\t\t\t\t\t\tkey={ myPatterns.name }\n\t\t\t\t\t\t\t\t\tcount={\n\t\t\t\t\t\t\t\t\t\t! myPatterns.count\n\t\t\t\t\t\t\t\t\t\t\t? '0'\n\t\t\t\t\t\t\t\t\t\t\t: myPatterns.count\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tlabel={ myPatterns.label }\n\t\t\t\t\t\t\t\t\ticon={ starFilled }\n\t\t\t\t\t\t\t\t\tid={ myPatterns.name }\n\t\t\t\t\t\t\t\t\ttype=\"wp_block\"\n\t\t\t\t\t\t\t\t\tisActive={\n\t\t\t\t\t\t\t\t\t\tcurrentCategory ===\n\t\t\t\t\t\t\t\t\t\t\t`${ myPatterns.name }` &&\n\t\t\t\t\t\t\t\t\t\tcurrentType === 'wp_block'\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</ItemGroup>\n\t\t\t\t\t\t\t{ hasPatterns && (\n\t\t\t\t\t\t\t\t<ThemePatternsGroup\n\t\t\t\t\t\t\t\t\tcategories={ patternCategories }\n\t\t\t\t\t\t\t\t\tcurrentCategory={ currentCategory }\n\t\t\t\t\t\t\t\t\tcurrentType={ currentType }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t{ hasTemplateParts && (\n\t\t\t\t\t\t\t\t<TemplatePartGroup\n\t\t\t\t\t\t\t\t\tareas={ templatePartAreas }\n\t\t\t\t\t\t\t\t\tcurrentArea={ currentCategory }\n\t\t\t\t\t\t\t\t\tcurrentType={ currentType }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</>\n\t\t\t\t\t) }\n\t\t\t\t</>\n\t\t\t}\n\t\t/>\n\t);\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["__experimentalItemGroup","ItemGroup","__experimentalItem","Item","__experimentalHeading","Heading","useViewportMatch","getTemplatePartIcon","__","getQueryArgs","file","AddNewPattern","SidebarNavigationItem","SidebarNavigationScreen","CategoryItem","PATTERN_DEFAULT_CATEGORY","PATTERN_TYPES","useLink","usePatternCategories","useTemplatePartAreas","TemplatePartGroup","areas","currentArea","currentType","createElement","Fragment","className","level","Object","entries","map","area","label","templateParts","key","count","length","icon","id","type","isActive","PatternCategoriesGroup","categories","currentCategory","category","name","theme","user","SidebarNavigationScreenPatterns","isMobileViewport","categoryType","categoryId","window","location","href","templatePartAreas","hasTemplateParts","isLoading","patternCategories","hasPatterns","templatePartsLink","path","footer","as","withChevron","undefined","title","description","actions","content"],"sources":["@wordpress/edit-site/src/components/sidebar-navigation-screen-patterns/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalItemGroup as ItemGroup,\n\t__experimentalItem as Item,\n\t__experimentalHeading as Heading,\n} from '@wordpress/components';\nimport { useViewportMatch } from '@wordpress/compose';\nimport { getTemplatePartIcon } from '@wordpress/editor';\nimport { __ } from '@wordpress/i18n';\nimport { getQueryArgs } from '@wordpress/url';\nimport { file } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport AddNewPattern from '../add-new-pattern';\nimport SidebarNavigationItem from '../sidebar-navigation-item';\nimport SidebarNavigationScreen from '../sidebar-navigation-screen';\nimport CategoryItem from './category-item';\nimport { PATTERN_DEFAULT_CATEGORY, PATTERN_TYPES } from '../../utils/constants';\nimport { useLink } from '../routes/link';\nimport usePatternCategories from './use-pattern-categories';\nimport useTemplatePartAreas from './use-template-part-areas';\n\nfunction TemplatePartGroup( { areas, currentArea, currentType } ) {\n\treturn (\n\t\t<>\n\t\t\t<div className=\"edit-site-sidebar-navigation-screen-patterns__group-header\">\n\t\t\t\t<Heading level={ 2 }>{ __( 'Template parts' ) }</Heading>\n\t\t\t</div>\n\t\t\t<ItemGroup className=\"edit-site-sidebar-navigation-screen-patterns__group\">\n\t\t\t\t{ Object.entries( areas ).map(\n\t\t\t\t\t( [ area, { label, templateParts } ] ) => (\n\t\t\t\t\t\t<CategoryItem\n\t\t\t\t\t\t\tkey={ area }\n\t\t\t\t\t\t\tcount={ templateParts?.length }\n\t\t\t\t\t\t\ticon={ getTemplatePartIcon( area ) }\n\t\t\t\t\t\t\tlabel={ label }\n\t\t\t\t\t\t\tid={ area }\n\t\t\t\t\t\t\ttype=\"wp_template_part\"\n\t\t\t\t\t\t\tisActive={\n\t\t\t\t\t\t\t\tcurrentArea === area &&\n\t\t\t\t\t\t\t\tcurrentType === 'wp_template_part'\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</ItemGroup>\n\t\t</>\n\t);\n}\n\nfunction PatternCategoriesGroup( {\n\tcategories,\n\tcurrentCategory,\n\tcurrentType,\n} ) {\n\treturn (\n\t\t<>\n\t\t\t<ItemGroup className=\"edit-site-sidebar-navigation-screen-patterns__group\">\n\t\t\t\t{ categories.map( ( category ) => (\n\t\t\t\t\t<CategoryItem\n\t\t\t\t\t\tkey={ category.name }\n\t\t\t\t\t\tcount={ category.count }\n\t\t\t\t\t\tlabel={ category.label }\n\t\t\t\t\t\ticon={ file }\n\t\t\t\t\t\tid={ category.name }\n\t\t\t\t\t\ttype=\"pattern\"\n\t\t\t\t\t\tisActive={\n\t\t\t\t\t\t\tcurrentCategory === `${ category.name }` &&\n\t\t\t\t\t\t\t( currentType === PATTERN_TYPES.theme ||\n\t\t\t\t\t\t\t\tcurrentType === PATTERN_TYPES.user )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t) ) }\n\t\t\t</ItemGroup>\n\t\t</>\n\t);\n}\n\nexport default function SidebarNavigationScreenPatterns() {\n\tconst isMobileViewport = useViewportMatch( 'medium', '<' );\n\tconst { categoryType, categoryId } = getQueryArgs( window.location.href );\n\tconst currentCategory = categoryId || PATTERN_DEFAULT_CATEGORY;\n\tconst currentType = categoryType || PATTERN_TYPES.user;\n\n\tconst { templatePartAreas, hasTemplateParts, isLoading } =\n\t\tuseTemplatePartAreas();\n\tconst { patternCategories, hasPatterns } = usePatternCategories();\n\n\tconst templatePartsLink = useLink( { path: '/wp_template_part/all' } );\n\tconst footer = ! isMobileViewport ? (\n\t\t<ItemGroup>\n\t\t\t<SidebarNavigationItem\n\t\t\t\tas=\"a\"\n\t\t\t\thref=\"edit.php?post_type=wp_block\"\n\t\t\t\twithChevron\n\t\t\t>\n\t\t\t\t{ __( 'Manage all of my patterns' ) }\n\t\t\t</SidebarNavigationItem>\n\t\t\t<SidebarNavigationItem withChevron { ...templatePartsLink }>\n\t\t\t\t{ __( 'Manage all template parts' ) }\n\t\t\t</SidebarNavigationItem>\n\t\t</ItemGroup>\n\t) : undefined;\n\n\treturn (\n\t\t<SidebarNavigationScreen\n\t\t\ttitle={ __( 'Patterns' ) }\n\t\t\tdescription={ __(\n\t\t\t\t'Manage what patterns are available when editing the site.'\n\t\t\t) }\n\t\t\tactions={ <AddNewPattern /> }\n\t\t\tfooter={ footer }\n\t\t\tcontent={\n\t\t\t\t<>\n\t\t\t\t\t{ isLoading && __( 'Loading patterns…' ) }\n\t\t\t\t\t{ ! isLoading && (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t{ ! hasTemplateParts && ! hasPatterns && (\n\t\t\t\t\t\t\t\t<ItemGroup className=\"edit-site-sidebar-navigation-screen-patterns__group\">\n\t\t\t\t\t\t\t\t\t<Item>\n\t\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t\t\t'No template parts or patterns found'\n\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t</Item>\n\t\t\t\t\t\t\t\t</ItemGroup>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t{ hasPatterns && (\n\t\t\t\t\t\t\t\t<PatternCategoriesGroup\n\t\t\t\t\t\t\t\t\tcategories={ patternCategories }\n\t\t\t\t\t\t\t\t\tcurrentCategory={ currentCategory }\n\t\t\t\t\t\t\t\t\tcurrentType={ currentType }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t{ hasTemplateParts && (\n\t\t\t\t\t\t\t\t<TemplatePartGroup\n\t\t\t\t\t\t\t\t\tareas={ templatePartAreas }\n\t\t\t\t\t\t\t\t\tcurrentArea={ currentCategory }\n\t\t\t\t\t\t\t\t\tcurrentType={ currentType }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</>\n\t\t\t\t\t) }\n\t\t\t\t</>\n\t\t\t}\n\t\t/>\n\t);\n}\n"],"mappings":";AAAA;AACA;AACA;AACA,SACCA,uBAAuB,IAAIC,SAAS,EACpCC,kBAAkB,IAAIC,IAAI,EAC1BC,qBAAqB,IAAIC,OAAO,QAC1B,uBAAuB;AAC9B,SAASC,gBAAgB,QAAQ,oBAAoB;AACrD,SAASC,mBAAmB,QAAQ,mBAAmB;AACvD,SAASC,EAAE,QAAQ,iBAAiB;AACpC,SAASC,YAAY,QAAQ,gBAAgB;AAC7C,SAASC,IAAI,QAAQ,kBAAkB;;AAEvC;AACA;AACA;AACA,OAAOC,aAAa,MAAM,oBAAoB;AAC9C,OAAOC,qBAAqB,MAAM,4BAA4B;AAC9D,OAAOC,uBAAuB,MAAM,8BAA8B;AAClE,OAAOC,YAAY,MAAM,iBAAiB;AAC1C,SAASC,wBAAwB,EAAEC,aAAa,QAAQ,uBAAuB;AAC/E,SAASC,OAAO,QAAQ,gBAAgB;AACxC,OAAOC,oBAAoB,MAAM,0BAA0B;AAC3D,OAAOC,oBAAoB,MAAM,2BAA2B;AAE5D,SAASC,iBAAiBA,CAAE;EAAEC,KAAK;EAAEC,WAAW;EAAEC;AAAY,CAAC,EAAG;EACjE,OACCC,aAAA,CAAAC,QAAA,QACCD,aAAA;IAAKE,SAAS,EAAC;EAA4D,GAC1EF,aAAA,CAACnB,OAAO;IAACsB,KAAK,EAAG;EAAG,GAAGnB,EAAE,CAAE,gBAAiB,CAAY,CACpD,CAAC,EACNgB,aAAA,CAACvB,SAAS;IAACyB,SAAS,EAAC;EAAqD,GACvEE,MAAM,CAACC,OAAO,CAAER,KAAM,CAAC,CAACS,GAAG,CAC5B,CAAE,CAAEC,IAAI,EAAE;IAAEC,KAAK;IAAEC;EAAc,CAAC,CAAE,KACnCT,aAAA,CAACV,YAAY;IACZoB,GAAG,EAAGH,IAAM;IACZI,KAAK,EAAGF,aAAa,EAAEG,MAAQ;IAC/BC,IAAI,EAAG9B,mBAAmB,CAAEwB,IAAK,CAAG;IACpCC,KAAK,EAAGA,KAAO;IACfM,EAAE,EAAGP,IAAM;IACXQ,IAAI,EAAC,kBAAkB;IACvBC,QAAQ,EACPlB,WAAW,KAAKS,IAAI,IACpBR,WAAW,KAAK;EAChB,CACD,CAEH,CACU,CACV,CAAC;AAEL;AAEA,SAASkB,sBAAsBA,CAAE;EAChCC,UAAU;EACVC,eAAe;EACfpB;AACD,CAAC,EAAG;EACH,OACCC,aAAA,CAAAC,QAAA,QACCD,aAAA,CAACvB,SAAS;IAACyB,SAAS,EAAC;EAAqD,GACvEgB,UAAU,CAACZ,GAAG,CAAIc,QAAQ,IAC3BpB,aAAA,CAACV,YAAY;IACZoB,GAAG,EAAGU,QAAQ,CAACC,IAAM;IACrBV,KAAK,EAAGS,QAAQ,CAACT,KAAO;IACxBH,KAAK,EAAGY,QAAQ,CAACZ,KAAO;IACxBK,IAAI,EAAG3B,IAAM;IACb4B,EAAE,EAAGM,QAAQ,CAACC,IAAM;IACpBN,IAAI,EAAC,SAAS;IACdC,QAAQ,EACPG,eAAe,KAAM,GAAGC,QAAQ,CAACC,IAAM,EAAC,KACtCtB,WAAW,KAAKP,aAAa,CAAC8B,KAAK,IACpCvB,WAAW,KAAKP,aAAa,CAAC+B,IAAI;EACnC,CACD,CACA,CACQ,CACV,CAAC;AAEL;AAEA,eAAe,SAASC,+BAA+BA,CAAA,EAAG;EACzD,MAAMC,gBAAgB,GAAG3C,gBAAgB,CAAE,QAAQ,EAAE,GAAI,CAAC;EAC1D,MAAM;IAAE4C,YAAY;IAAEC;EAAW,CAAC,GAAG1C,YAAY,CAAE2C,MAAM,CAACC,QAAQ,CAACC,IAAK,CAAC;EACzE,MAAMX,eAAe,GAAGQ,UAAU,IAAIpC,wBAAwB;EAC9D,MAAMQ,WAAW,GAAG2B,YAAY,IAAIlC,aAAa,CAAC+B,IAAI;EAEtD,MAAM;IAAEQ,iBAAiB;IAAEC,gBAAgB;IAAEC;EAAU,CAAC,GACvDtC,oBAAoB,CAAC,CAAC;EACvB,MAAM;IAAEuC,iBAAiB;IAAEC;EAAY,CAAC,GAAGzC,oBAAoB,CAAC,CAAC;EAEjE,MAAM0C,iBAAiB,GAAG3C,OAAO,CAAE;IAAE4C,IAAI,EAAE;EAAwB,CAAE,CAAC;EACtE,MAAMC,MAAM,GAAG,CAAEb,gBAAgB,GAChCzB,aAAA,CAACvB,SAAS,QACTuB,aAAA,CAACZ,qBAAqB;IACrBmD,EAAE,EAAC,GAAG;IACNT,IAAI,EAAC,6BAA6B;IAClCU,WAAW;EAAA,GAETxD,EAAE,CAAE,2BAA4B,CACZ,CAAC,EACxBgB,aAAA,CAACZ,qBAAqB;IAACoD,WAAW;IAAA,GAAMJ;EAAiB,GACtDpD,EAAE,CAAE,2BAA4B,CACZ,CACb,CAAC,GACTyD,SAAS;EAEb,OACCzC,aAAA,CAACX,uBAAuB;IACvBqD,KAAK,EAAG1D,EAAE,CAAE,UAAW,CAAG;IAC1B2D,WAAW,EAAG3D,EAAE,CACf,2DACD,CAAG;IACH4D,OAAO,EAAG5C,aAAA,CAACb,aAAa,MAAE,CAAG;IAC7BmD,MAAM,EAAGA,MAAQ;IACjBO,OAAO,EACN7C,aAAA,CAAAC,QAAA,QACGgC,SAAS,IAAIjD,EAAE,CAAE,mBAAoB,CAAC,EACtC,CAAEiD,SAAS,IACZjC,aAAA,CAAAC,QAAA,QACG,CAAE+B,gBAAgB,IAAI,CAAEG,WAAW,IACpCnC,aAAA,CAACvB,SAAS;MAACyB,SAAS,EAAC;IAAqD,GACzEF,aAAA,CAACrB,IAAI,QACFK,EAAE,CACH,qCACD,CACK,CACI,CACX,EACCmD,WAAW,IACZnC,aAAA,CAACiB,sBAAsB;MACtBC,UAAU,EAAGgB,iBAAmB;MAChCf,eAAe,EAAGA,eAAiB;MACnCpB,WAAW,EAAGA;IAAa,CAC3B,CACD,EACCiC,gBAAgB,IACjBhC,aAAA,CAACJ,iBAAiB;MACjBC,KAAK,EAAGkC,iBAAmB;MAC3BjC,WAAW,EAAGqB,eAAiB;MAC/BpB,WAAW,EAAGA;IAAa,CAC3B,CAED,CAEF;EACF,CACD,CAAC;AAEJ"}
|
package/build-module/components/sidebar-navigation-screen-patterns/use-pattern-categories.js
CHANGED
|
@@ -9,6 +9,8 @@ import { __ } from '@wordpress/i18n';
|
|
|
9
9
|
*/
|
|
10
10
|
import useDefaultPatternCategories from './use-default-pattern-categories';
|
|
11
11
|
import useThemePatterns from './use-theme-patterns';
|
|
12
|
+
import usePatterns from '../page-patterns/use-patterns';
|
|
13
|
+
import { PATTERN_TYPES, PATTERN_DEFAULT_CATEGORY } from '../../utils/constants';
|
|
12
14
|
export default function usePatternCategories() {
|
|
13
15
|
const defaultCategories = useDefaultPatternCategories();
|
|
14
16
|
defaultCategories.push({
|
|
@@ -16,6 +18,10 @@ export default function usePatternCategories() {
|
|
|
16
18
|
label: __('Uncategorized')
|
|
17
19
|
});
|
|
18
20
|
const themePatterns = useThemePatterns();
|
|
21
|
+
const {
|
|
22
|
+
patterns: userPatterns,
|
|
23
|
+
categories: userPatternCategories
|
|
24
|
+
} = usePatterns(PATTERN_TYPES.user);
|
|
19
25
|
const patternCategories = useMemo(() => {
|
|
20
26
|
const categoryMap = {};
|
|
21
27
|
const categoriesWithCounts = [];
|
|
@@ -29,6 +35,14 @@ export default function usePatternCategories() {
|
|
|
29
35
|
};
|
|
30
36
|
}
|
|
31
37
|
});
|
|
38
|
+
userPatternCategories.forEach(category => {
|
|
39
|
+
if (!categoryMap[category.name]) {
|
|
40
|
+
categoryMap[category.name] = {
|
|
41
|
+
...category,
|
|
42
|
+
count: 0
|
|
43
|
+
};
|
|
44
|
+
}
|
|
45
|
+
});
|
|
32
46
|
|
|
33
47
|
// Update the category counts to reflect theme registered patterns.
|
|
34
48
|
themePatterns.forEach(pattern => {
|
|
@@ -43,14 +57,34 @@ export default function usePatternCategories() {
|
|
|
43
57
|
}
|
|
44
58
|
});
|
|
45
59
|
|
|
60
|
+
// Update the category counts to reflect user registered patterns.
|
|
61
|
+
userPatterns.forEach(pattern => {
|
|
62
|
+
pattern.categories?.forEach(category => {
|
|
63
|
+
if (categoryMap[category]) {
|
|
64
|
+
categoryMap[category].count += 1;
|
|
65
|
+
}
|
|
66
|
+
});
|
|
67
|
+
// If the pattern has no categories, add it to uncategorized.
|
|
68
|
+
if (!pattern.categories?.length) {
|
|
69
|
+
categoryMap.uncategorized.count += 1;
|
|
70
|
+
}
|
|
71
|
+
});
|
|
72
|
+
|
|
46
73
|
// Filter categories so we only have those containing patterns.
|
|
47
|
-
defaultCategories.forEach(category => {
|
|
48
|
-
if (categoryMap[category.name].count) {
|
|
74
|
+
[...defaultCategories, ...userPatternCategories].forEach(category => {
|
|
75
|
+
if (categoryMap[category.name].count && !categoriesWithCounts.find(cat => cat.name === category.name)) {
|
|
49
76
|
categoriesWithCounts.push(categoryMap[category.name]);
|
|
50
77
|
}
|
|
51
78
|
});
|
|
52
|
-
|
|
53
|
-
|
|
79
|
+
const sortedCategories = categoriesWithCounts.sort((a, b) => a.label.localeCompare(b.label));
|
|
80
|
+
sortedCategories.unshift({
|
|
81
|
+
name: PATTERN_DEFAULT_CATEGORY,
|
|
82
|
+
label: __('All Patterns'),
|
|
83
|
+
description: __('A list of all patterns from all sources'),
|
|
84
|
+
count: themePatterns.length + userPatterns.length
|
|
85
|
+
});
|
|
86
|
+
return sortedCategories;
|
|
87
|
+
}, [defaultCategories, themePatterns, userPatternCategories, userPatterns]);
|
|
54
88
|
return {
|
|
55
89
|
patternCategories,
|
|
56
90
|
hasPatterns: !!patternCategories.length
|
package/build-module/components/sidebar-navigation-screen-patterns/use-pattern-categories.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useMemo","__","useDefaultPatternCategories","useThemePatterns","usePatternCategories","defaultCategories","push","name","label","themePatterns","patternCategories","categoryMap","categoriesWithCounts","forEach","category","count","pattern","
|
|
1
|
+
{"version":3,"names":["useMemo","__","useDefaultPatternCategories","useThemePatterns","usePatterns","PATTERN_TYPES","PATTERN_DEFAULT_CATEGORY","usePatternCategories","defaultCategories","push","name","label","themePatterns","patterns","userPatterns","categories","userPatternCategories","user","patternCategories","categoryMap","categoriesWithCounts","forEach","category","count","pattern","length","uncategorized","find","cat","sortedCategories","sort","a","b","localeCompare","unshift","description","hasPatterns"],"sources":["@wordpress/edit-site/src/components/sidebar-navigation-screen-patterns/use-pattern-categories.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useMemo } from '@wordpress/element';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport useDefaultPatternCategories from './use-default-pattern-categories';\nimport useThemePatterns from './use-theme-patterns';\nimport usePatterns from '../page-patterns/use-patterns';\nimport { PATTERN_TYPES, PATTERN_DEFAULT_CATEGORY } from '../../utils/constants';\n\nexport default function usePatternCategories() {\n\tconst defaultCategories = useDefaultPatternCategories();\n\tdefaultCategories.push( {\n\t\tname: 'uncategorized',\n\t\tlabel: __( 'Uncategorized' ),\n\t} );\n\tconst themePatterns = useThemePatterns();\n\tconst { patterns: userPatterns, categories: userPatternCategories } =\n\t\tusePatterns( PATTERN_TYPES.user );\n\n\tconst patternCategories = useMemo( () => {\n\t\tconst categoryMap = {};\n\t\tconst categoriesWithCounts = [];\n\n\t\t// Create a map for easier counting of patterns in categories.\n\t\tdefaultCategories.forEach( ( category ) => {\n\t\t\tif ( ! categoryMap[ category.name ] ) {\n\t\t\t\tcategoryMap[ category.name ] = { ...category, count: 0 };\n\t\t\t}\n\t\t} );\n\t\tuserPatternCategories.forEach( ( category ) => {\n\t\t\tif ( ! categoryMap[ category.name ] ) {\n\t\t\t\tcategoryMap[ category.name ] = { ...category, count: 0 };\n\t\t\t}\n\t\t} );\n\n\t\t// Update the category counts to reflect theme registered patterns.\n\t\tthemePatterns.forEach( ( pattern ) => {\n\t\t\tpattern.categories?.forEach( ( category ) => {\n\t\t\t\tif ( categoryMap[ category ] ) {\n\t\t\t\t\tcategoryMap[ category ].count += 1;\n\t\t\t\t}\n\t\t\t} );\n\t\t\t// If the pattern has no categories, add it to uncategorized.\n\t\t\tif ( ! pattern.categories?.length ) {\n\t\t\t\tcategoryMap.uncategorized.count += 1;\n\t\t\t}\n\t\t} );\n\n\t\t// Update the category counts to reflect user registered patterns.\n\t\tuserPatterns.forEach( ( pattern ) => {\n\t\t\tpattern.categories?.forEach( ( category ) => {\n\t\t\t\tif ( categoryMap[ category ] ) {\n\t\t\t\t\tcategoryMap[ category ].count += 1;\n\t\t\t\t}\n\t\t\t} );\n\t\t\t// If the pattern has no categories, add it to uncategorized.\n\t\t\tif ( ! pattern.categories?.length ) {\n\t\t\t\tcategoryMap.uncategorized.count += 1;\n\t\t\t}\n\t\t} );\n\n\t\t// Filter categories so we only have those containing patterns.\n\t\t[ ...defaultCategories, ...userPatternCategories ].forEach(\n\t\t\t( category ) => {\n\t\t\t\tif (\n\t\t\t\t\tcategoryMap[ category.name ].count &&\n\t\t\t\t\t! categoriesWithCounts.find(\n\t\t\t\t\t\t( cat ) => cat.name === category.name\n\t\t\t\t\t)\n\t\t\t\t) {\n\t\t\t\t\tcategoriesWithCounts.push( categoryMap[ category.name ] );\n\t\t\t\t}\n\t\t\t}\n\t\t);\n\t\tconst sortedCategories = categoriesWithCounts.sort( ( a, b ) =>\n\t\t\ta.label.localeCompare( b.label )\n\t\t);\n\t\tsortedCategories.unshift( {\n\t\t\tname: PATTERN_DEFAULT_CATEGORY,\n\t\t\tlabel: __( 'All Patterns' ),\n\t\t\tdescription: __( 'A list of all patterns from all sources' ),\n\t\t\tcount: themePatterns.length + userPatterns.length,\n\t\t} );\n\t\treturn sortedCategories;\n\t}, [\n\t\tdefaultCategories,\n\t\tthemePatterns,\n\t\tuserPatternCategories,\n\t\tuserPatterns,\n\t] );\n\n\treturn { patternCategories, hasPatterns: !! patternCategories.length };\n}\n"],"mappings":"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"}
|
|
@@ -8,7 +8,8 @@ import { useMemo } from '@wordpress/element';
|
|
|
8
8
|
/**
|
|
9
9
|
* Internal dependencies
|
|
10
10
|
*/
|
|
11
|
-
import {
|
|
11
|
+
import { filterOutDuplicatesByName } from '../page-patterns/utils';
|
|
12
|
+
import { PATTERN_CORE_SOURCES } from '../../utils/constants';
|
|
12
13
|
import { unlock } from '../../lock-unlock';
|
|
13
14
|
import { store as editSiteStore } from '../../store';
|
|
14
15
|
export default function useThemePatterns() {
|
|
@@ -20,7 +21,7 @@ export default function useThemePatterns() {
|
|
|
20
21
|
return (_getSettings$__experi = getSettings().__experimentalAdditionalBlockPatterns) !== null && _getSettings$__experi !== void 0 ? _getSettings$__experi : getSettings().__experimentalBlockPatterns;
|
|
21
22
|
});
|
|
22
23
|
const restBlockPatterns = useSelect(select => select(coreStore).getBlockPatterns());
|
|
23
|
-
const patterns = useMemo(() => [...(blockPatterns || []), ...(restBlockPatterns || [])].filter(pattern => !
|
|
24
|
+
const patterns = useMemo(() => [...(blockPatterns || []), ...(restBlockPatterns || [])].filter(pattern => !PATTERN_CORE_SOURCES.includes(pattern.source)).filter(filterOutDuplicatesByName).filter(pattern => pattern.inserter !== false), [blockPatterns, restBlockPatterns]);
|
|
24
25
|
return patterns;
|
|
25
26
|
}
|
|
26
27
|
//# sourceMappingURL=use-theme-patterns.js.map
|
package/build-module/components/sidebar-navigation-screen-patterns/use-theme-patterns.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["store","coreStore","useSelect","useMemo","
|
|
1
|
+
{"version":3,"names":["store","coreStore","useSelect","useMemo","filterOutDuplicatesByName","PATTERN_CORE_SOURCES","unlock","editSiteStore","useThemePatterns","blockPatterns","select","_getSettings$__experi","getSettings","__experimentalAdditionalBlockPatterns","__experimentalBlockPatterns","restBlockPatterns","getBlockPatterns","patterns","filter","pattern","includes","source","inserter"],"sources":["@wordpress/edit-site/src/components/sidebar-navigation-screen-patterns/use-theme-patterns.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { store as coreStore } from '@wordpress/core-data';\nimport { useSelect } from '@wordpress/data';\nimport { useMemo } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { filterOutDuplicatesByName } from '../page-patterns/utils';\nimport { PATTERN_CORE_SOURCES } from '../../utils/constants';\nimport { unlock } from '../../lock-unlock';\nimport { store as editSiteStore } from '../../store';\n\nexport default function useThemePatterns() {\n\tconst blockPatterns = useSelect( ( select ) => {\n\t\tconst { getSettings } = unlock( select( editSiteStore ) );\n\n\t\treturn (\n\t\t\tgetSettings().__experimentalAdditionalBlockPatterns ??\n\t\t\tgetSettings().__experimentalBlockPatterns\n\t\t);\n\t} );\n\n\tconst restBlockPatterns = useSelect( ( select ) =>\n\t\tselect( coreStore ).getBlockPatterns()\n\t);\n\n\tconst patterns = useMemo(\n\t\t() =>\n\t\t\t[ ...( blockPatterns || [] ), ...( restBlockPatterns || [] ) ]\n\t\t\t\t.filter(\n\t\t\t\t\t( pattern ) =>\n\t\t\t\t\t\t! PATTERN_CORE_SOURCES.includes( pattern.source )\n\t\t\t\t)\n\t\t\t\t.filter( filterOutDuplicatesByName )\n\t\t\t\t.filter( ( pattern ) => pattern.inserter !== false ),\n\t\t[ blockPatterns, restBlockPatterns ]\n\t);\n\n\treturn patterns;\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,KAAK,IAAIC,SAAS,QAAQ,sBAAsB;AACzD,SAASC,SAAS,QAAQ,iBAAiB;AAC3C,SAASC,OAAO,QAAQ,oBAAoB;;AAE5C;AACA;AACA;AACA,SAASC,yBAAyB,QAAQ,wBAAwB;AAClE,SAASC,oBAAoB,QAAQ,uBAAuB;AAC5D,SAASC,MAAM,QAAQ,mBAAmB;AAC1C,SAASN,KAAK,IAAIO,aAAa,QAAQ,aAAa;AAEpD,eAAe,SAASC,gBAAgBA,CAAA,EAAG;EAC1C,MAAMC,aAAa,GAAGP,SAAS,CAAIQ,MAAM,IAAM;IAAA,IAAAC,qBAAA;IAC9C,MAAM;MAAEC;IAAY,CAAC,GAAGN,MAAM,CAAEI,MAAM,CAAEH,aAAc,CAAE,CAAC;IAEzD,QAAAI,qBAAA,GACCC,WAAW,CAAC,CAAC,CAACC,qCAAqC,cAAAF,qBAAA,cAAAA,qBAAA,GACnDC,WAAW,CAAC,CAAC,CAACE,2BAA2B;EAE3C,CAAE,CAAC;EAEH,MAAMC,iBAAiB,GAAGb,SAAS,CAAIQ,MAAM,IAC5CA,MAAM,CAAET,SAAU,CAAC,CAACe,gBAAgB,CAAC,CACtC,CAAC;EAED,MAAMC,QAAQ,GAAGd,OAAO,CACvB,MACC,CAAE,IAAKM,aAAa,IAAI,EAAE,CAAE,EAAE,IAAKM,iBAAiB,IAAI,EAAE,CAAE,CAAE,CAC5DG,MAAM,CACJC,OAAO,IACR,CAAEd,oBAAoB,CAACe,QAAQ,CAAED,OAAO,CAACE,MAAO,CAClD,CAAC,CACAH,MAAM,CAAEd,yBAA0B,CAAC,CACnCc,MAAM,CAAIC,OAAO,IAAMA,OAAO,CAACG,QAAQ,KAAK,KAAM,CAAC,EACtD,CAAEb,aAAa,EAAEM,iBAAiB,CACnC,CAAC;EAED,OAAOE,QAAQ;AAChB"}
|
|
@@ -34,8 +34,8 @@ function useTemplateDetails(postType, postId) {
|
|
|
34
34
|
descriptionText = __('This is a custom template that can be applied manually to any Post or Page.');
|
|
35
35
|
}
|
|
36
36
|
const content = record?.slug === 'home' || record?.slug === 'index' ? createElement(HomeTemplateDetails, null) : null;
|
|
37
|
-
const footer =
|
|
38
|
-
|
|
37
|
+
const footer = record?.modified ? createElement(SidebarNavigationScreenDetailsFooter, {
|
|
38
|
+
record: record
|
|
39
39
|
}) : null;
|
|
40
40
|
const description = createElement(Fragment, null, descriptionText, addedBy.text && !isAddedByActiveTheme && createElement("span", {
|
|
41
41
|
className: "edit-site-sidebar-navigation-screen-template__added-by-description"
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__","_x","useDispatch","useSelect","pencil","__experimentalUseNavigator","useNavigator","Icon","store","coreStore","SidebarNavigationScreen","useEditedEntityRecord","unlock","editSiteStore","SidebarButton","useAddedBy","TemplateActions","HomeTemplateDetails","SidebarNavigationScreenDetailsFooter","useTemplateDetails","postType","postId","getDescription","getTitle","record","currentTheme","select","getCurrentTheme","addedBy","isAddedByActiveTheme","type","theme","stylesheet","title","descriptionText","text","content","slug","createElement","footer","modified","
|
|
1
|
+
{"version":3,"names":["__","_x","useDispatch","useSelect","pencil","__experimentalUseNavigator","useNavigator","Icon","store","coreStore","SidebarNavigationScreen","useEditedEntityRecord","unlock","editSiteStore","SidebarButton","useAddedBy","TemplateActions","HomeTemplateDetails","SidebarNavigationScreenDetailsFooter","useTemplateDetails","postType","postId","getDescription","getTitle","record","currentTheme","select","getCurrentTheme","addedBy","isAddedByActiveTheme","type","theme","stylesheet","title","descriptionText","text","content","slug","createElement","footer","modified","description","Fragment","className","imageUrl","src","alt","width","height","icon","isCustomized","SidebarNavigationScreenTemplate","navigator","params","setCanvasMode","actions","toggleProps","as","onRemove","goTo","onClick","label"],"sources":["@wordpress/edit-site/src/components/sidebar-navigation-screen-template/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, _x } from '@wordpress/i18n';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { pencil } from '@wordpress/icons';\nimport {\n\t__experimentalUseNavigator as useNavigator,\n\tIcon,\n} from '@wordpress/components';\nimport { store as coreStore } from '@wordpress/core-data';\n/**\n * Internal dependencies\n */\nimport SidebarNavigationScreen from '../sidebar-navigation-screen';\nimport useEditedEntityRecord from '../use-edited-entity-record';\nimport { unlock } from '../../lock-unlock';\nimport { store as editSiteStore } from '../../store';\nimport SidebarButton from '../sidebar-button';\nimport { useAddedBy } from '../list/added-by';\nimport TemplateActions from '../template-actions';\nimport HomeTemplateDetails from './home-template-details';\nimport SidebarNavigationScreenDetailsFooter from '../sidebar-navigation-screen-details-footer';\n\nfunction useTemplateDetails( postType, postId ) {\n\tconst { getDescription, getTitle, record } = useEditedEntityRecord(\n\t\tpostType,\n\t\tpostId\n\t);\n\tconst currentTheme = useSelect(\n\t\t( select ) => select( coreStore ).getCurrentTheme(),\n\t\t[]\n\t);\n\tconst addedBy = useAddedBy( postType, postId );\n\tconst isAddedByActiveTheme =\n\t\taddedBy.type === 'theme' && record.theme === currentTheme?.stylesheet;\n\tconst title = getTitle();\n\tlet descriptionText = getDescription();\n\n\tif ( ! descriptionText && addedBy.text ) {\n\t\tdescriptionText = __(\n\t\t\t'This is a custom template that can be applied manually to any Post or Page.'\n\t\t);\n\t}\n\n\tconst content =\n\t\trecord?.slug === 'home' || record?.slug === 'index' ? (\n\t\t\t<HomeTemplateDetails />\n\t\t) : null;\n\n\tconst footer = record?.modified ? (\n\t\t<SidebarNavigationScreenDetailsFooter record={ record } />\n\t) : null;\n\n\tconst description = (\n\t\t<>\n\t\t\t{ descriptionText }\n\n\t\t\t{ addedBy.text && ! isAddedByActiveTheme && (\n\t\t\t\t<span className=\"edit-site-sidebar-navigation-screen-template__added-by-description\">\n\t\t\t\t\t<span className=\"edit-site-sidebar-navigation-screen-template__added-by-description-author\">\n\t\t\t\t\t\t<span className=\"edit-site-sidebar-navigation-screen-template__added-by-description-author-icon\">\n\t\t\t\t\t\t\t{ addedBy.imageUrl ? (\n\t\t\t\t\t\t\t\t<img\n\t\t\t\t\t\t\t\t\tsrc={ addedBy.imageUrl }\n\t\t\t\t\t\t\t\t\talt=\"\"\n\t\t\t\t\t\t\t\t\twidth=\"24\"\n\t\t\t\t\t\t\t\t\theight=\"24\"\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t<Icon icon={ addedBy.icon } />\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</span>\n\t\t\t\t\t\t{ addedBy.text }\n\t\t\t\t\t</span>\n\n\t\t\t\t\t{ addedBy.isCustomized && (\n\t\t\t\t\t\t<span className=\"edit-site-sidebar-navigation-screen-template__added-by-description-customized\">\n\t\t\t\t\t\t\t{ _x( '(Customized)', 'template' ) }\n\t\t\t\t\t\t</span>\n\t\t\t\t\t) }\n\t\t\t\t</span>\n\t\t\t) }\n\t\t</>\n\t);\n\n\treturn { title, description, content, footer };\n}\n\nexport default function SidebarNavigationScreenTemplate() {\n\tconst navigator = useNavigator();\n\tconst {\n\t\tparams: { postType, postId },\n\t} = navigator;\n\tconst { setCanvasMode } = unlock( useDispatch( editSiteStore ) );\n\tconst { title, content, description, footer } = useTemplateDetails(\n\t\tpostType,\n\t\tpostId\n\t);\n\n\treturn (\n\t\t<SidebarNavigationScreen\n\t\t\ttitle={ title }\n\t\t\tactions={\n\t\t\t\t<>\n\t\t\t\t\t<TemplateActions\n\t\t\t\t\t\tpostType={ postType }\n\t\t\t\t\t\tpostId={ postId }\n\t\t\t\t\t\ttoggleProps={ { as: SidebarButton } }\n\t\t\t\t\t\tonRemove={ () => {\n\t\t\t\t\t\t\tnavigator.goTo( `/${ postType }/all` );\n\t\t\t\t\t\t} }\n\t\t\t\t\t/>\n\t\t\t\t\t<SidebarButton\n\t\t\t\t\t\tonClick={ () => setCanvasMode( 'edit' ) }\n\t\t\t\t\t\tlabel={ __( 'Edit' ) }\n\t\t\t\t\t\ticon={ pencil }\n\t\t\t\t\t/>\n\t\t\t\t</>\n\t\t\t}\n\t\t\tdescription={ description }\n\t\t\tcontent={ content }\n\t\t\tfooter={ footer }\n\t\t/>\n\t);\n}\n"],"mappings":"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"}
|