@wordpress/edit-site 5.34.0 → 5.35.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +9 -3
- package/build/components/add-new-template/index.js +2 -2
- package/build/components/add-new-template/index.js.map +1 -1
- package/build/components/app/index.js +4 -2
- package/build/components/app/index.js.map +1 -1
- package/build/components/block-editor/editor-canvas.js +4 -18
- package/build/components/block-editor/editor-canvas.js.map +1 -1
- package/build/components/block-editor/site-editor-canvas.js +2 -2
- package/build/components/block-editor/site-editor-canvas.js.map +1 -1
- package/build/components/dataviews-actions/index.js +46 -0
- package/build/components/dataviews-actions/index.js.map +1 -0
- package/build/components/editor/index.js +68 -12
- package/build/components/editor/index.js.map +1 -1
- package/build/components/global-styles/background-panel.js +13 -1
- package/build/components/global-styles/background-panel.js.map +1 -1
- package/build/components/global-styles/color-indicator-wrapper.js +2 -2
- package/build/components/global-styles/color-indicator-wrapper.js.map +1 -1
- package/build/components/global-styles/color-palette-panel.js +5 -2
- package/build/components/global-styles/color-palette-panel.js.map +1 -1
- package/build/components/global-styles/gradients-palette-panel.js +1 -2
- package/build/components/global-styles/gradients-palette-panel.js.map +1 -1
- package/build/components/global-styles/hooks.js +5 -2
- package/build/components/global-styles/hooks.js.map +1 -1
- package/build/components/global-styles/icon-with-current-color.js +2 -2
- package/build/components/global-styles/icon-with-current-color.js.map +1 -1
- package/build/components/global-styles/preset-colors.js +29 -0
- package/build/components/global-styles/preset-colors.js.map +1 -0
- package/build/components/global-styles/preview-colors.js +3 -7
- package/build/components/global-styles/preview-colors.js.map +1 -1
- package/build/components/global-styles/screen-color-palette.js +5 -5
- package/build/components/global-styles/screen-color-palette.js.map +1 -1
- package/build/components/global-styles/screen-colors.js +1 -4
- package/build/components/global-styles/screen-colors.js.map +1 -1
- package/build/components/global-styles/screen-revisions/revisions-buttons.js +2 -2
- package/build/components/global-styles/screen-revisions/revisions-buttons.js.map +1 -1
- package/build/components/global-styles/typography-example.js +5 -2
- package/build/components/global-styles/typography-example.js.map +1 -1
- package/build/components/global-styles/ui.js +4 -1
- package/build/components/global-styles/ui.js.map +1 -1
- package/build/components/global-styles/variations/variation.js +12 -6
- package/build/components/global-styles/variations/variation.js.map +1 -1
- package/build/components/global-styles/variations/variations-color.js +5 -5
- package/build/components/global-styles/variations/variations-color.js.map +1 -1
- package/build/components/global-styles-sidebar/default-sidebar.js.map +1 -0
- package/build/components/{sidebar-edit-mode/global-styles-sidebar.js → global-styles-sidebar/index.js} +8 -5
- package/build/components/global-styles-sidebar/index.js.map +1 -0
- package/build/components/header-edit-mode/index.js +20 -120
- package/build/components/header-edit-mode/index.js.map +1 -1
- package/build/components/layout/index.js +3 -6
- package/build/components/layout/index.js.map +1 -1
- package/build/components/layout/router.js +69 -14
- package/build/components/layout/router.js.map +1 -1
- package/build/components/page/index.js +2 -2
- package/build/components/page/index.js.map +1 -1
- package/build/components/page-pages/index.js +4 -15
- package/build/components/page-pages/index.js.map +1 -1
- package/build/components/page-patterns/dataviews-pattern-actions.js +4 -80
- package/build/components/page-patterns/dataviews-pattern-actions.js.map +1 -1
- package/build/components/page-patterns/index.js +9 -20
- package/build/components/page-patterns/index.js.map +1 -1
- package/build/components/page-templates/index.js +6 -14
- package/build/components/page-templates/index.js.map +1 -1
- package/build/components/pagination/index.js +2 -2
- package/build/components/pagination/index.js.map +1 -1
- package/build/components/resizable-frame/index.js +11 -3
- package/build/components/resizable-frame/index.js.map +1 -1
- package/build/components/revisions/index.js +5 -2
- package/build/components/revisions/index.js.map +1 -1
- package/build/components/save-panel/index.js +4 -4
- package/build/components/save-panel/index.js.map +1 -1
- package/build/components/sidebar/index.js +61 -31
- package/build/components/sidebar/index.js.map +1 -1
- package/build/components/sidebar-button/index.js +2 -2
- package/build/components/sidebar-button/index.js.map +1 -1
- package/build/components/sidebar-dataviews/dataview-item.js +2 -2
- package/build/components/sidebar-dataviews/dataview-item.js.map +1 -1
- package/build/components/sidebar-navigation-item/index.js +5 -3
- package/build/components/sidebar-navigation-item/index.js.map +1 -1
- package/build/components/sidebar-navigation-screen/index.js +6 -32
- package/build/components/sidebar-navigation-screen/index.js.map +1 -1
- package/build/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-row.js +2 -2
- package/build/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-row.js.map +1 -1
- package/build/components/sidebar-navigation-screen-global-styles/index.js +4 -1
- package/build/components/sidebar-navigation-screen-global-styles/index.js.map +1 -1
- package/build/components/sidebar-navigation-screen-navigation-menu/index.js +10 -3
- package/build/components/sidebar-navigation-screen-navigation-menu/index.js.map +1 -1
- package/build/components/sidebar-navigation-screen-navigation-menu/more-menu.js +16 -1
- package/build/components/sidebar-navigation-screen-navigation-menu/more-menu.js.map +1 -1
- package/build/components/sidebar-navigation-screen-navigation-menu/single-navigation-menu.js +3 -0
- package/build/components/sidebar-navigation-screen-navigation-menu/single-navigation-menu.js.map +1 -1
- package/build/components/sidebar-navigation-screen-navigation-menus/index.js +16 -6
- package/build/components/sidebar-navigation-screen-navigation-menus/index.js.map +1 -1
- package/build/components/sidebar-navigation-screen-navigation-menus/leaf-more-menu.js +2 -9
- package/build/components/sidebar-navigation-screen-navigation-menus/leaf-more-menu.js.map +1 -1
- package/build/components/sidebar-navigation-screen-page/status-label.js +2 -2
- package/build/components/sidebar-navigation-screen-page/status-label.js.map +1 -1
- package/build/components/sidebar-navigation-screen-pattern/index.js +4 -9
- package/build/components/sidebar-navigation-screen-pattern/index.js.map +1 -1
- package/build/components/sidebar-navigation-screen-patterns/index.js +4 -14
- package/build/components/sidebar-navigation-screen-patterns/index.js.map +1 -1
- package/build/components/sidebar-navigation-screen-template/index.js +4 -1
- package/build/components/sidebar-navigation-screen-template/index.js.map +1 -1
- package/build/components/sidebar-navigation-screen-templates-browse/index.js +4 -1
- package/build/components/sidebar-navigation-screen-templates-browse/index.js.map +1 -1
- package/build/components/site-hub/index.js +3 -3
- package/build/components/site-hub/index.js.map +1 -1
- package/build/components/site-icon/index.js +2 -2
- package/build/components/site-icon/index.js.map +1 -1
- package/build/components/style-book/index.js +10 -7
- package/build/components/style-book/index.js.map +1 -1
- package/build/components/template-part-converter/index.js +18 -1
- package/build/components/template-part-converter/index.js.map +1 -1
- package/build/hooks/use-theme-style-variations/use-theme-style-variations-by-property.js +5 -2
- package/build/hooks/use-theme-style-variations/use-theme-style-variations-by-property.js.map +1 -1
- package/build/utils/get-is-list-page.js +1 -1
- package/build/utils/get-is-list-page.js.map +1 -1
- package/build/utils/use-activate-theme.js +9 -6
- package/build/utils/use-activate-theme.js.map +1 -1
- package/build-module/components/add-new-template/index.js +2 -2
- package/build-module/components/add-new-template/index.js.map +1 -1
- package/build-module/components/app/index.js +4 -2
- package/build-module/components/app/index.js.map +1 -1
- package/build-module/components/block-editor/editor-canvas.js +4 -18
- package/build-module/components/block-editor/editor-canvas.js.map +1 -1
- package/build-module/components/block-editor/site-editor-canvas.js +2 -2
- package/build-module/components/block-editor/site-editor-canvas.js.map +1 -1
- package/build-module/components/dataviews-actions/index.js +38 -0
- package/build-module/components/dataviews-actions/index.js.map +1 -0
- package/build-module/components/editor/index.js +69 -13
- package/build-module/components/editor/index.js.map +1 -1
- package/build-module/components/global-styles/background-panel.js +12 -1
- package/build-module/components/global-styles/background-panel.js.map +1 -1
- package/build-module/components/global-styles/color-indicator-wrapper.js +2 -2
- package/build-module/components/global-styles/color-indicator-wrapper.js.map +1 -1
- package/build-module/components/global-styles/color-palette-panel.js +4 -2
- package/build-module/components/global-styles/color-palette-panel.js.map +1 -1
- package/build-module/components/global-styles/gradients-palette-panel.js +1 -2
- package/build-module/components/global-styles/gradients-palette-panel.js.map +1 -1
- package/build-module/components/global-styles/hooks.js +4 -1
- package/build-module/components/global-styles/hooks.js.map +1 -1
- package/build-module/components/global-styles/icon-with-current-color.js +2 -2
- package/build-module/components/global-styles/icon-with-current-color.js.map +1 -1
- package/build-module/components/global-styles/preset-colors.js +22 -0
- package/build-module/components/global-styles/preset-colors.js.map +1 -0
- package/build-module/components/global-styles/preview-colors.js +3 -7
- package/build-module/components/global-styles/preview-colors.js.map +1 -1
- package/build-module/components/global-styles/screen-color-palette.js +5 -5
- package/build-module/components/global-styles/screen-color-palette.js.map +1 -1
- package/build-module/components/global-styles/screen-colors.js +1 -4
- package/build-module/components/global-styles/screen-colors.js.map +1 -1
- package/build-module/components/global-styles/screen-revisions/revisions-buttons.js +2 -2
- package/build-module/components/global-styles/screen-revisions/revisions-buttons.js.map +1 -1
- package/build-module/components/global-styles/typography-example.js +4 -1
- package/build-module/components/global-styles/typography-example.js.map +1 -1
- package/build-module/components/global-styles/ui.js +4 -1
- package/build-module/components/global-styles/ui.js.map +1 -1
- package/build-module/components/global-styles/variations/variation.js +11 -5
- package/build-module/components/global-styles/variations/variation.js.map +1 -1
- package/build-module/components/global-styles/variations/variations-color.js +6 -6
- package/build-module/components/global-styles/variations/variations-color.js.map +1 -1
- package/build-module/components/global-styles-sidebar/default-sidebar.js.map +1 -0
- package/build-module/components/{sidebar-edit-mode/global-styles-sidebar.js → global-styles-sidebar/index.js} +8 -5
- package/build-module/components/global-styles-sidebar/index.js.map +1 -0
- package/build-module/components/header-edit-mode/index.js +20 -120
- package/build-module/components/header-edit-mode/index.js.map +1 -1
- package/build-module/components/layout/index.js +3 -6
- package/build-module/components/layout/index.js.map +1 -1
- package/build-module/components/layout/router.js +69 -15
- package/build-module/components/layout/router.js.map +1 -1
- package/build-module/components/page/index.js +2 -2
- package/build-module/components/page/index.js.map +1 -1
- package/build-module/components/page-pages/index.js +4 -15
- package/build-module/components/page-pages/index.js.map +1 -1
- package/build-module/components/page-patterns/dataviews-pattern-actions.js +4 -80
- package/build-module/components/page-patterns/dataviews-pattern-actions.js.map +1 -1
- package/build-module/components/page-patterns/index.js +10 -21
- package/build-module/components/page-patterns/index.js.map +1 -1
- package/build-module/components/page-templates/index.js +6 -14
- package/build-module/components/page-templates/index.js.map +1 -1
- package/build-module/components/pagination/index.js +2 -2
- package/build-module/components/pagination/index.js.map +1 -1
- package/build-module/components/resizable-frame/index.js +12 -4
- package/build-module/components/resizable-frame/index.js.map +1 -1
- package/build-module/components/revisions/index.js +4 -1
- package/build-module/components/revisions/index.js.map +1 -1
- package/build-module/components/save-panel/index.js +4 -4
- package/build-module/components/save-panel/index.js.map +1 -1
- package/build-module/components/sidebar/index.js +62 -32
- package/build-module/components/sidebar/index.js.map +1 -1
- package/build-module/components/sidebar-button/index.js +2 -2
- package/build-module/components/sidebar-button/index.js.map +1 -1
- package/build-module/components/sidebar-dataviews/dataview-item.js +2 -2
- package/build-module/components/sidebar-dataviews/dataview-item.js.map +1 -1
- package/build-module/components/sidebar-navigation-item/index.js +5 -3
- package/build-module/components/sidebar-navigation-item/index.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen/index.js +6 -32
- package/build-module/components/sidebar-navigation-screen/index.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-row.js +2 -2
- package/build-module/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-row.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-global-styles/index.js +4 -1
- package/build-module/components/sidebar-navigation-screen-global-styles/index.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-navigation-menu/index.js +10 -3
- package/build-module/components/sidebar-navigation-screen-navigation-menu/index.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-navigation-menu/more-menu.js +16 -1
- package/build-module/components/sidebar-navigation-screen-navigation-menu/more-menu.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-navigation-menu/single-navigation-menu.js +3 -0
- package/build-module/components/sidebar-navigation-screen-navigation-menu/single-navigation-menu.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-navigation-menus/index.js +16 -6
- package/build-module/components/sidebar-navigation-screen-navigation-menus/index.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-navigation-menus/leaf-more-menu.js +2 -9
- package/build-module/components/sidebar-navigation-screen-navigation-menus/leaf-more-menu.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-page/status-label.js +2 -2
- package/build-module/components/sidebar-navigation-screen-page/status-label.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-pattern/index.js +4 -9
- package/build-module/components/sidebar-navigation-screen-pattern/index.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-patterns/index.js +4 -14
- package/build-module/components/sidebar-navigation-screen-patterns/index.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-template/index.js +4 -1
- package/build-module/components/sidebar-navigation-screen-template/index.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-templates-browse/index.js +4 -1
- package/build-module/components/sidebar-navigation-screen-templates-browse/index.js.map +1 -1
- package/build-module/components/site-hub/index.js +3 -3
- package/build-module/components/site-hub/index.js.map +1 -1
- package/build-module/components/site-icon/index.js +2 -2
- package/build-module/components/site-icon/index.js.map +1 -1
- package/build-module/components/style-book/index.js +9 -6
- package/build-module/components/style-book/index.js.map +1 -1
- package/build-module/components/template-part-converter/index.js +18 -1
- package/build-module/components/template-part-converter/index.js.map +1 -1
- package/build-module/hooks/use-theme-style-variations/use-theme-style-variations-by-property.js +4 -1
- package/build-module/hooks/use-theme-style-variations/use-theme-style-variations-by-property.js.map +1 -1
- package/build-module/utils/get-is-list-page.js +1 -1
- package/build-module/utils/get-is-list-page.js.map +1 -1
- package/build-module/utils/use-activate-theme.js +9 -6
- package/build-module/utils/use-activate-theme.js.map +1 -1
- package/build-style/style-rtl.css +144 -374
- package/build-style/style.css +144 -374
- package/package.json +43 -45
- package/src/components/add-new-template/index.js +2 -2
- package/src/components/app/index.js +5 -2
- package/src/components/block-editor/editor-canvas.js +6 -26
- package/src/components/block-editor/site-editor-canvas.js +2 -2
- package/src/components/block-editor/style.scss +2 -2
- package/src/components/dataviews-actions/index.js +38 -0
- package/src/components/editor/index.js +76 -16
- package/src/components/editor/style.scss +0 -4
- package/src/components/global-styles/background-panel.js +17 -2
- package/src/components/global-styles/color-indicator-wrapper.js +2 -2
- package/src/components/global-styles/color-palette-panel.js +3 -4
- package/src/components/global-styles/gradients-palette-panel.js +1 -4
- package/src/components/global-styles/hooks.js +2 -1
- package/src/components/global-styles/icon-with-current-color.js +2 -2
- package/src/components/global-styles/preset-colors.js +18 -0
- package/src/components/global-styles/preview-colors.js +4 -7
- package/src/components/global-styles/screen-color-palette.js +4 -4
- package/src/components/global-styles/screen-colors.js +0 -2
- package/src/components/global-styles/screen-revisions/revisions-buttons.js +2 -2
- package/src/components/global-styles/stories/index.story.js +2 -1
- package/src/components/global-styles/typography-example.js +2 -1
- package/src/components/global-styles/ui.js +5 -1
- package/src/components/global-styles/variations/style.scss +15 -31
- package/src/components/global-styles/variations/variation.js +13 -10
- package/src/components/global-styles/variations/variations-color.js +5 -8
- package/src/components/{sidebar-edit-mode/global-styles-sidebar.js → global-styles-sidebar/index.js} +7 -2
- package/src/components/{sidebar-edit-mode → global-styles-sidebar}/style.scss +0 -11
- package/src/components/header-edit-mode/index.js +25 -164
- package/src/components/header-edit-mode/style.scss +1 -199
- package/src/components/layout/index.js +3 -8
- package/src/components/layout/router.js +65 -15
- package/src/components/layout/style.scss +2 -1
- package/src/components/page/index.js +2 -2
- package/src/components/page-pages/index.js +8 -38
- package/src/components/page-pages/style.scss +0 -11
- package/src/components/page-patterns/dataviews-pattern-actions.js +3 -92
- package/src/components/page-patterns/index.js +16 -35
- package/src/components/page-templates/index.js +10 -29
- package/src/components/pagination/index.js +2 -2
- package/src/components/resizable-frame/index.js +16 -4
- package/src/components/revisions/index.js +2 -1
- package/src/components/save-panel/index.js +4 -4
- package/src/components/sidebar/index.js +61 -37
- package/src/components/sidebar-button/index.js +2 -5
- package/src/components/sidebar-dataviews/dataview-item.js +4 -7
- package/src/components/sidebar-navigation-item/index.js +3 -3
- package/src/components/sidebar-navigation-screen/index.js +7 -31
- package/src/components/sidebar-navigation-screen/style.scss +11 -9
- package/src/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-row.js +2 -2
- package/src/components/sidebar-navigation-screen-global-styles/index.js +2 -1
- package/src/components/sidebar-navigation-screen-navigation-menu/index.js +6 -1
- package/src/components/sidebar-navigation-screen-navigation-menu/more-menu.js +18 -1
- package/src/components/sidebar-navigation-screen-navigation-menu/single-navigation-menu.js +3 -0
- package/src/components/sidebar-navigation-screen-navigation-menus/index.js +8 -4
- package/src/components/sidebar-navigation-screen-navigation-menus/leaf-more-menu.js +0 -10
- package/src/components/sidebar-navigation-screen-page/status-label.js +2 -2
- package/src/components/sidebar-navigation-screen-pattern/index.js +2 -8
- package/src/components/sidebar-navigation-screen-patterns/index.js +2 -13
- package/src/components/sidebar-navigation-screen-template/index.js +2 -1
- package/src/components/sidebar-navigation-screen-templates-browse/index.js +2 -1
- package/src/components/site-hub/index.js +3 -3
- package/src/components/site-icon/index.js +2 -2
- package/src/components/style-book/index.js +7 -6
- package/src/components/template-part-converter/index.js +16 -3
- package/src/hooks/use-theme-style-variations/use-theme-style-variations-by-property.js +2 -1
- package/src/style.scss +1 -11
- package/src/utils/get-is-list-page.js +1 -3
- package/src/utils/use-activate-theme.js +4 -4
- package/build/components/global-styles/global-styles-provider.js +0 -129
- package/build/components/global-styles/global-styles-provider.js.map +0 -1
- package/build/components/header-edit-mode/document-tools/index.js +0 -68
- package/build/components/header-edit-mode/document-tools/index.js.map +0 -1
- package/build/components/sidebar-edit-mode/default-sidebar.js.map +0 -1
- package/build/components/sidebar-edit-mode/global-styles-sidebar.js.map +0 -1
- package/build/components/sidebar-edit-mode/index.js +0 -147
- package/build/components/sidebar-edit-mode/index.js.map +0 -1
- package/build/components/sidebar-edit-mode/page-panels/index.js +0 -129
- package/build/components/sidebar-edit-mode/page-panels/index.js.map +0 -1
- package/build/components/sidebar-edit-mode/page-panels/page-content.js +0 -34
- package/build/components/sidebar-edit-mode/page-panels/page-content.js.map +0 -1
- package/build/components/sidebar-edit-mode/page-panels/page-summary.js +0 -46
- package/build/components/sidebar-edit-mode/page-panels/page-summary.js.map +0 -1
- package/build/components/sidebar-edit-mode/settings-header/index.js +0 -42
- package/build/components/sidebar-edit-mode/settings-header/index.js.map +0 -1
- package/build/components/sidebar-edit-mode/template-panel/hooks.js +0 -86
- package/build/components/sidebar-edit-mode/template-panel/hooks.js.map +0 -1
- package/build/components/sidebar-edit-mode/template-panel/index.js +0 -127
- package/build/components/sidebar-edit-mode/template-panel/index.js.map +0 -1
- package/build/components/start-template-options/index.js +0 -191
- package/build/components/start-template-options/index.js.map +0 -1
- package/build/utils/math.js +0 -98
- package/build/utils/math.js.map +0 -1
- package/build-module/components/global-styles/global-styles-provider.js +0 -120
- package/build-module/components/global-styles/global-styles-provider.js.map +0 -1
- package/build-module/components/header-edit-mode/document-tools/index.js +0 -61
- package/build-module/components/header-edit-mode/document-tools/index.js.map +0 -1
- package/build-module/components/sidebar-edit-mode/default-sidebar.js.map +0 -1
- package/build-module/components/sidebar-edit-mode/global-styles-sidebar.js.map +0 -1
- package/build-module/components/sidebar-edit-mode/index.js +0 -138
- package/build-module/components/sidebar-edit-mode/index.js.map +0 -1
- package/build-module/components/sidebar-edit-mode/page-panels/index.js +0 -121
- package/build-module/components/sidebar-edit-mode/page-panels/index.js.map +0 -1
- package/build-module/components/sidebar-edit-mode/page-panels/page-content.js +0 -27
- package/build-module/components/sidebar-edit-mode/page-panels/page-content.js.map +0 -1
- package/build-module/components/sidebar-edit-mode/page-panels/page-summary.js +0 -39
- package/build-module/components/sidebar-edit-mode/page-panels/page-summary.js.map +0 -1
- package/build-module/components/sidebar-edit-mode/settings-header/index.js +0 -35
- package/build-module/components/sidebar-edit-mode/settings-header/index.js.map +0 -1
- package/build-module/components/sidebar-edit-mode/template-panel/hooks.js +0 -79
- package/build-module/components/sidebar-edit-mode/template-panel/hooks.js.map +0 -1
- package/build-module/components/sidebar-edit-mode/template-panel/index.js +0 -119
- package/build-module/components/sidebar-edit-mode/template-panel/index.js.map +0 -1
- package/build-module/components/start-template-options/index.js +0 -184
- package/build-module/components/start-template-options/index.js.map +0 -1
- package/build-module/utils/math.js +0 -92
- package/build-module/utils/math.js.map +0 -1
- package/src/components/global-styles/global-styles-provider.js +0 -162
- package/src/components/header-edit-mode/document-tools/index.js +0 -68
- package/src/components/sidebar-edit-mode/index.js +0 -173
- package/src/components/sidebar-edit-mode/page-panels/index.js +0 -133
- package/src/components/sidebar-edit-mode/page-panels/page-content.js +0 -29
- package/src/components/sidebar-edit-mode/page-panels/page-summary.js +0 -61
- package/src/components/sidebar-edit-mode/settings-header/index.js +0 -43
- package/src/components/sidebar-edit-mode/settings-header/style.scss +0 -14
- package/src/components/sidebar-edit-mode/template-panel/hooks.js +0 -114
- package/src/components/sidebar-edit-mode/template-panel/index.js +0 -134
- package/src/components/sidebar-edit-mode/template-panel/style.scss +0 -16
- package/src/components/start-template-options/index.js +0 -231
- package/src/components/start-template-options/style.scss +0 -55
- package/src/utils/math.js +0 -93
- /package/build/components/{sidebar-edit-mode → global-styles-sidebar}/default-sidebar.js +0 -0
- /package/build-module/components/{sidebar-edit-mode → global-styles-sidebar}/default-sidebar.js +0 -0
- /package/src/components/{sidebar-edit-mode → global-styles-sidebar}/default-sidebar.js +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["classnames","__experimentalHStack","HStack","Button","Tooltip","Flex","__","_x","useState","useMemo","useCallback","useId","useEffect","BlockPreview","privateApis","blockEditorPrivateApis","DataViews","filterSortAndPaginate","Icon","lockSmall","usePrevious","useEntityRecords","editorPrivateApis","routerPrivateApis","Async","Page","LAYOUT_GRID","LAYOUT_TABLE","LAYOUT_LIST","PATTERN_TYPES","TEMPLATE_PART_POST_TYPE","PATTERN_SYNC_TYPES","PATTERN_DEFAULT_CATEGORY","OPERATOR_IS","exportJSONaction","renameAction","resetAction","deleteAction","duplicatePatternAction","duplicateTemplatePartAction","usePatternSettings","unlock","usePatterns","PatternsHeader","useLink","useAddedBy","ExperimentalBlockEditorProvider","useGlobalStyle","usePostActions","useHistory","useLocation","EMPTY_ARRAY","defaultConfigPerViewType","primaryField","mediaField","badgeFields","DEFAULT_VIEW","type","search","page","perPage","hiddenFields","layout","filters","SYNC_FILTERS","value","full","label","description","unsynced","PreviewWrapper","item","onClick","ariaDescribedBy","children","createElement","className","theme","undefined","title","Preview","categoryId","viewType","descriptionId","isUserPattern","user","isTemplatePart","isEmpty","blocks","length","backgroundColor","postType","postId","id","name","categoryType","canvas","style","viewportWidth","hidden","Author","isImageLoaded","setIsImageLoaded","text","icon","imageUrl","withIcon","alignment","spacing","onLoad","alt","src","Title","justify","as","gap","variant","tabIndex","placement","size","DataviewsPatterns","params","categoryIdFromURL","view","setView","isUncategorizedThemePatterns","previousCategoryId","viewSyncStatus","find","field","patterns","isResolving","syncStatus","records","per_page","authors","authorsSet","Set","forEach","template","add","author_text","Array","from","map","author","fields","_fields","header","render","enableSorting","enableHiding","width","push","elements","filterBy","operators","isPrimary","getValue","templatePart","data","paginationInfo","viewWithoutFilters","history","onActionPerformed","actionId","items","post","editAction","viewRevisionsAction","actions","onChangeView","newView","settings","hideTitleFromUI","titleId","getItemId","isLoading","supportedLayouts"],"sources":["@wordpress/edit-site/src/components/page-patterns/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalHStack as HStack,\n\tButton,\n\tTooltip,\n\tFlex,\n} from '@wordpress/components';\nimport { __, _x } from '@wordpress/i18n';\nimport {\n\tuseState,\n\tuseMemo,\n\tuseCallback,\n\tuseId,\n\tuseEffect,\n} from '@wordpress/element';\nimport {\n\tBlockPreview,\n\tprivateApis as blockEditorPrivateApis,\n} from '@wordpress/block-editor';\nimport { DataViews, filterSortAndPaginate } from '@wordpress/dataviews';\nimport { Icon, lockSmall } from '@wordpress/icons';\nimport { usePrevious } from '@wordpress/compose';\nimport { useEntityRecords } from '@wordpress/core-data';\nimport { privateApis as editorPrivateApis } from '@wordpress/editor';\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\n\n/**\n * Internal dependencies\n */\nimport { Async } from '../async';\nimport Page from '../page';\nimport {\n\tLAYOUT_GRID,\n\tLAYOUT_TABLE,\n\tLAYOUT_LIST,\n\tPATTERN_TYPES,\n\tTEMPLATE_PART_POST_TYPE,\n\tPATTERN_SYNC_TYPES,\n\tPATTERN_DEFAULT_CATEGORY,\n\tOPERATOR_IS,\n} from '../../utils/constants';\nimport {\n\texportJSONaction,\n\trenameAction,\n\tresetAction,\n\tdeleteAction,\n\tduplicatePatternAction,\n\tduplicateTemplatePartAction,\n} from './dataviews-pattern-actions';\nimport usePatternSettings from './use-pattern-settings';\nimport { unlock } from '../../lock-unlock';\nimport usePatterns from './use-patterns';\nimport PatternsHeader from './header';\nimport { useLink } from '../routes/link';\nimport { useAddedBy } from '../page-templates/hooks';\n\nconst { ExperimentalBlockEditorProvider, useGlobalStyle } = unlock(\n\tblockEditorPrivateApis\n);\nconst { usePostActions } = unlock( editorPrivateApis );\nconst { useHistory, useLocation } = unlock( routerPrivateApis );\n\nconst EMPTY_ARRAY = [];\nconst defaultConfigPerViewType = {\n\t[ LAYOUT_TABLE ]: {\n\t\tprimaryField: 'title',\n\t},\n\t[ LAYOUT_GRID ]: {\n\t\tmediaField: 'preview',\n\t\tprimaryField: 'title',\n\t\tbadgeFields: [ 'sync-status' ],\n\t},\n};\nconst DEFAULT_VIEW = {\n\ttype: LAYOUT_GRID,\n\tsearch: '',\n\tpage: 1,\n\tperPage: 20,\n\thiddenFields: [],\n\tlayout: {\n\t\t...defaultConfigPerViewType[ LAYOUT_GRID ],\n\t},\n\tfilters: [],\n};\n\nconst SYNC_FILTERS = [\n\t{\n\t\tvalue: PATTERN_SYNC_TYPES.full,\n\t\tlabel: _x( 'Synced', 'Option that shows all synchronized patterns' ),\n\t\tdescription: __( 'Patterns that are kept in sync across the site.' ),\n\t},\n\t{\n\t\tvalue: PATTERN_SYNC_TYPES.unsynced,\n\t\tlabel: _x(\n\t\t\t'Not synced',\n\t\t\t'Option that shows all patterns that are not synchronized'\n\t\t),\n\t\tdescription: __(\n\t\t\t'Patterns that can be changed freely without affecting the site.'\n\t\t),\n\t},\n];\n\nfunction PreviewWrapper( { item, onClick, ariaDescribedBy, children } ) {\n\treturn (\n\t\t<button\n\t\t\tclassName=\"page-patterns-preview-field__button\"\n\t\t\ttype=\"button\"\n\t\t\tonClick={ item.type !== PATTERN_TYPES.theme ? onClick : undefined }\n\t\t\taria-label={ item.title }\n\t\t\taria-describedby={ ariaDescribedBy }\n\t\t\taria-disabled={ item.type === PATTERN_TYPES.theme }\n\t\t>\n\t\t\t{ children }\n\t\t</button>\n\t);\n}\n\nfunction Preview( { item, categoryId, viewType } ) {\n\tconst descriptionId = useId();\n\tconst isUserPattern = item.type === PATTERN_TYPES.user;\n\tconst isTemplatePart = item.type === TEMPLATE_PART_POST_TYPE;\n\tconst isEmpty = ! item.blocks?.length;\n\n\tconst [ backgroundColor ] = useGlobalStyle( 'color.background' );\n\tconst { onClick } = useLink( {\n\t\tpostType: item.type,\n\t\tpostId: isUserPattern ? item.id : item.name,\n\t\tcategoryId,\n\t\tcategoryType: isTemplatePart ? item.type : PATTERN_TYPES.theme,\n\t\tcanvas: 'edit',\n\t} );\n\n\treturn (\n\t\t<div\n\t\t\tclassName={ `page-patterns-preview-field is-viewtype-${ viewType }` }\n\t\t\tstyle={ { backgroundColor } }\n\t\t>\n\t\t\t<PreviewWrapper\n\t\t\t\titem={ item }\n\t\t\t\tonClick={ onClick }\n\t\t\t\tariaDescribedBy={ item.description ? descriptionId : undefined }\n\t\t\t>\n\t\t\t\t{ isEmpty && isTemplatePart && __( 'Empty template part' ) }\n\t\t\t\t{ isEmpty && ! isTemplatePart && __( 'Empty pattern' ) }\n\t\t\t\t{ ! isEmpty && (\n\t\t\t\t\t<Async>\n\t\t\t\t\t\t<BlockPreview\n\t\t\t\t\t\t\tblocks={ item.blocks }\n\t\t\t\t\t\t\tviewportWidth={ item.viewportWidth }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</Async>\n\t\t\t\t) }\n\t\t\t</PreviewWrapper>\n\t\t\t{ item.description && (\n\t\t\t\t<div hidden id={ descriptionId }>\n\t\t\t\t\t{ item.description }\n\t\t\t\t</div>\n\t\t\t) }\n\t\t</div>\n\t);\n}\n\nfunction Author( { item, viewType } ) {\n\tconst [ isImageLoaded, setIsImageLoaded ] = useState( false );\n\tconst { text, icon, imageUrl } = useAddedBy( item.type, item.id );\n\tconst withIcon = viewType !== LAYOUT_LIST;\n\n\treturn (\n\t\t<HStack alignment=\"left\" spacing={ 1 }>\n\t\t\t{ withIcon && imageUrl && (\n\t\t\t\t<div\n\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\t'page-templates-author-field__avatar',\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t'is-loaded': isImageLoaded,\n\t\t\t\t\t\t}\n\t\t\t\t\t) }\n\t\t\t\t>\n\t\t\t\t\t<img\n\t\t\t\t\t\tonLoad={ () => setIsImageLoaded( true ) }\n\t\t\t\t\t\talt=\"\"\n\t\t\t\t\t\tsrc={ imageUrl }\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t) }\n\t\t\t{ withIcon && ! imageUrl && (\n\t\t\t\t<div className=\"page-templates-author-field__icon\">\n\t\t\t\t\t<Icon icon={ icon } />\n\t\t\t\t</div>\n\t\t\t) }\n\t\t\t<span className=\"page-templates-author-field__name\">{ text }</span>\n\t\t</HStack>\n\t);\n}\n\nfunction Title( { item, categoryId } ) {\n\tconst isUserPattern = item.type === PATTERN_TYPES.user;\n\tconst isTemplatePart = item.type === TEMPLATE_PART_POST_TYPE;\n\tconst { onClick } = useLink( {\n\t\tpostType: item.type,\n\t\tpostId: isUserPattern ? item.id : item.name,\n\t\tcategoryId,\n\t\tcategoryType: isTemplatePart ? item.type : PATTERN_TYPES.theme,\n\t\tcanvas: 'edit',\n\t} );\n\treturn (\n\t\t<HStack alignment=\"center\" justify=\"flex-start\" spacing={ 2 }>\n\t\t\t<Flex\n\t\t\t\tas=\"div\"\n\t\t\t\tgap={ 0 }\n\t\t\t\tjustify=\"left\"\n\t\t\t\tclassName=\"edit-site-patterns__pattern-title\"\n\t\t\t>\n\t\t\t\t{ item.type === PATTERN_TYPES.theme ? (\n\t\t\t\t\titem.title\n\t\t\t\t) : (\n\t\t\t\t\t<Button\n\t\t\t\t\t\tvariant=\"link\"\n\t\t\t\t\t\tonClick={ onClick }\n\t\t\t\t\t\t// Required for the grid's roving tab index system.\n\t\t\t\t\t\t// See https://github.com/WordPress/gutenberg/pull/51898#discussion_r1243399243.\n\t\t\t\t\t\ttabIndex=\"-1\"\n\t\t\t\t\t>\n\t\t\t\t\t\t{ item.title || item.name }\n\t\t\t\t\t</Button>\n\t\t\t\t) }\n\t\t\t</Flex>\n\t\t\t{ item.type === PATTERN_TYPES.theme && (\n\t\t\t\t<Tooltip\n\t\t\t\t\tplacement=\"top\"\n\t\t\t\t\ttext={ __( 'This pattern cannot be edited.' ) }\n\t\t\t\t>\n\t\t\t\t\t<Icon\n\t\t\t\t\t\tclassName=\"edit-site-patterns__pattern-lock-icon\"\n\t\t\t\t\t\ticon={ lockSmall }\n\t\t\t\t\t\tsize={ 24 }\n\t\t\t\t\t/>\n\t\t\t\t</Tooltip>\n\t\t\t) }\n\t\t</HStack>\n\t);\n}\n\nexport default function DataviewsPatterns() {\n\tconst {\n\t\tparams: { categoryType, categoryId: categoryIdFromURL },\n\t} = useLocation();\n\tconst type = categoryType || PATTERN_TYPES.theme;\n\tconst categoryId = categoryIdFromURL || PATTERN_DEFAULT_CATEGORY;\n\tconst [ view, setView ] = useState( DEFAULT_VIEW );\n\tconst isUncategorizedThemePatterns =\n\t\ttype === PATTERN_TYPES.theme && categoryId === 'uncategorized';\n\tconst previousCategoryId = usePrevious( categoryId );\n\tconst viewSyncStatus = view.filters?.find(\n\t\t( { field } ) => field === 'sync-status'\n\t)?.value;\n\tconst { patterns, isResolving } = usePatterns(\n\t\ttype,\n\t\tisUncategorizedThemePatterns ? '' : categoryId,\n\t\t{\n\t\t\tsearch: view.search,\n\t\t\tsyncStatus: viewSyncStatus,\n\t\t}\n\t);\n\n\tconst { records } = useEntityRecords( 'postType', TEMPLATE_PART_POST_TYPE, {\n\t\tper_page: -1,\n\t} );\n\tconst authors = useMemo( () => {\n\t\tif ( ! records ) {\n\t\t\treturn EMPTY_ARRAY;\n\t\t}\n\t\tconst authorsSet = new Set();\n\t\trecords.forEach( ( template ) => {\n\t\t\tauthorsSet.add( template.author_text );\n\t\t} );\n\t\treturn Array.from( authorsSet ).map( ( author ) => ( {\n\t\t\tvalue: author,\n\t\t\tlabel: author,\n\t\t} ) );\n\t}, [ records ] );\n\n\tconst fields = useMemo( () => {\n\t\tconst _fields = [\n\t\t\t{\n\t\t\t\theader: __( 'Preview' ),\n\t\t\t\tid: 'preview',\n\t\t\t\trender: ( { item } ) => (\n\t\t\t\t\t<Preview\n\t\t\t\t\t\titem={ item }\n\t\t\t\t\t\tcategoryId={ categoryId }\n\t\t\t\t\t\tviewType={ view.type }\n\t\t\t\t\t/>\n\t\t\t\t),\n\t\t\t\tenableSorting: false,\n\t\t\t\tenableHiding: false,\n\t\t\t\twidth: '1%',\n\t\t\t},\n\t\t\t{\n\t\t\t\theader: __( 'Title' ),\n\t\t\t\tid: 'title',\n\t\t\t\trender: ( { item } ) => (\n\t\t\t\t\t<Title item={ item } categoryId={ categoryId } />\n\t\t\t\t),\n\t\t\t\tenableHiding: false,\n\t\t\t},\n\t\t];\n\n\t\tif ( type === PATTERN_TYPES.theme ) {\n\t\t\t_fields.push( {\n\t\t\t\theader: __( 'Sync status' ),\n\t\t\t\tid: 'sync-status',\n\t\t\t\trender: ( { item } ) => {\n\t\t\t\t\t// User patterns can have their sync statuses checked directly.\n\t\t\t\t\t// Non-user patterns are all unsynced for the time being.\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<span\n\t\t\t\t\t\t\tclassName={ `edit-site-patterns__field-sync-status-${ item.syncStatus }` }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ SYNC_FILTERS.find(\n\t\t\t\t\t\t\t\t( { value } ) => value === item.syncStatus\n\t\t\t\t\t\t\t)?.label ||\n\t\t\t\t\t\t\t\tSYNC_FILTERS.find(\n\t\t\t\t\t\t\t\t\t( { value } ) =>\n\t\t\t\t\t\t\t\t\t\tvalue === PATTERN_SYNC_TYPES.unsynced\n\t\t\t\t\t\t\t\t).label }\n\t\t\t\t\t\t</span>\n\t\t\t\t\t);\n\t\t\t\t},\n\t\t\t\telements: SYNC_FILTERS,\n\t\t\t\tfilterBy: {\n\t\t\t\t\toperators: [ OPERATOR_IS ],\n\t\t\t\t\tisPrimary: true,\n\t\t\t\t},\n\t\t\t\tenableSorting: false,\n\t\t\t} );\n\t\t} else if ( type === TEMPLATE_PART_POST_TYPE ) {\n\t\t\t_fields.push( {\n\t\t\t\theader: __( 'Author' ),\n\t\t\t\tid: 'author',\n\t\t\t\tgetValue: ( { item } ) => item.templatePart.author_text,\n\t\t\t\trender: ( { item } ) => {\n\t\t\t\t\treturn <Author viewType={ view.type } item={ item } />;\n\t\t\t\t},\n\t\t\t\telements: authors,\n\t\t\t\tfilterBy: {\n\t\t\t\t\tisPrimary: true,\n\t\t\t\t},\n\t\t\t\twidth: '1%',\n\t\t\t} );\n\t\t}\n\n\t\treturn _fields;\n\t}, [ view.type, categoryId, type, authors ] );\n\n\t// Reset the page number when the category changes.\n\tuseEffect( () => {\n\t\tif ( previousCategoryId !== categoryId ) {\n\t\t\tsetView( DEFAULT_VIEW );\n\t\t}\n\t}, [ categoryId, previousCategoryId ] );\n\tconst { data, paginationInfo } = useMemo( () => {\n\t\t// Search is managed server-side as well as filters for patterns.\n\t\t// However, the author filter in template parts is done client-side.\n\t\tconst viewWithoutFilters = { ...view };\n\t\tdelete viewWithoutFilters.search;\n\t\tif ( type !== TEMPLATE_PART_POST_TYPE ) {\n\t\t\tviewWithoutFilters.filters = [];\n\t\t}\n\t\treturn filterSortAndPaginate( patterns, viewWithoutFilters, fields );\n\t}, [ patterns, view, fields, type ] );\n\n\tconst history = useHistory();\n\tconst onActionPerformed = useCallback(\n\t\t( actionId, items ) => {\n\t\t\tif ( actionId === 'edit-post' ) {\n\t\t\t\tconst post = items[ 0 ];\n\t\t\t\thistory.push( {\n\t\t\t\t\tpostId: post.id,\n\t\t\t\t\tpostType: post.type,\n\t\t\t\t\tcategoryId,\n\t\t\t\t\tcategoryType: type,\n\t\t\t\t\tcanvas: 'edit',\n\t\t\t\t} );\n\t\t\t}\n\t\t},\n\t\t[ history, categoryId, type ]\n\t);\n\tconst [ editAction, viewRevisionsAction ] = usePostActions(\n\t\tonActionPerformed,\n\t\t[ 'edit-post', 'view-post-revisions' ]\n\t);\n\tconst actions = useMemo( () => {\n\t\tif ( type === TEMPLATE_PART_POST_TYPE ) {\n\t\t\treturn [\n\t\t\t\teditAction,\n\t\t\t\trenameAction,\n\t\t\t\tduplicateTemplatePartAction,\n\t\t\t\tviewRevisionsAction,\n\t\t\t\tresetAction,\n\t\t\t\tdeleteAction,\n\t\t\t];\n\t\t}\n\t\treturn [\n\t\t\trenameAction,\n\t\t\tduplicatePatternAction,\n\t\t\texportJSONaction,\n\t\t\tresetAction,\n\t\t\tdeleteAction,\n\t\t];\n\t}, [ type, editAction, viewRevisionsAction ] );\n\tconst onChangeView = useCallback(\n\t\t( newView ) => {\n\t\t\tif ( newView.type !== view.type ) {\n\t\t\t\tnewView = {\n\t\t\t\t\t...newView,\n\t\t\t\t\tlayout: {\n\t\t\t\t\t\t...defaultConfigPerViewType[ newView.type ],\n\t\t\t\t\t},\n\t\t\t\t};\n\t\t\t}\n\t\t\tsetView( newView );\n\t\t},\n\t\t[ view.type, setView ]\n\t);\n\tconst id = useId();\n\tconst settings = usePatternSettings();\n\t// Wrap everything in a block editor provider.\n\t// This ensures 'styles' that are needed for the previews are synced\n\t// from the site editor store to the block editor store.\n\treturn (\n\t\t<ExperimentalBlockEditorProvider settings={ settings }>\n\t\t\t<Page\n\t\t\t\ttitle={ __( 'Patterns content' ) }\n\t\t\t\tclassName=\"edit-site-page-patterns-dataviews\"\n\t\t\t\thideTitleFromUI\n\t\t\t>\n\t\t\t\t<PatternsHeader\n\t\t\t\t\tcategoryId={ categoryId }\n\t\t\t\t\ttype={ type }\n\t\t\t\t\ttitleId={ `${ id }-title` }\n\t\t\t\t\tdescriptionId={ `${ id }-description` }\n\t\t\t\t/>\n\t\t\t\t<DataViews\n\t\t\t\t\tpaginationInfo={ paginationInfo }\n\t\t\t\t\tfields={ fields }\n\t\t\t\t\tactions={ actions }\n\t\t\t\t\tdata={ data || EMPTY_ARRAY }\n\t\t\t\t\tgetItemId={ ( item ) => item.name }\n\t\t\t\t\tisLoading={ isResolving }\n\t\t\t\t\tview={ view }\n\t\t\t\t\tonChangeView={ onChangeView }\n\t\t\t\t\tsupportedLayouts={ [ LAYOUT_GRID, LAYOUT_TABLE ] }\n\t\t\t\t/>\n\t\t\t</Page>\n\t\t</ExperimentalBlockEditorProvider>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["clsx","__experimentalHStack","HStack","Button","Tooltip","Flex","__","_x","useState","useMemo","useCallback","useId","useEffect","BlockPreview","privateApis","blockEditorPrivateApis","DataViews","filterSortAndPaginate","Icon","lockSmall","usePrevious","useEntityRecords","editorPrivateApis","routerPrivateApis","Async","Page","LAYOUT_GRID","LAYOUT_TABLE","LAYOUT_LIST","PATTERN_TYPES","TEMPLATE_PART_POST_TYPE","PATTERN_SYNC_TYPES","PATTERN_DEFAULT_CATEGORY","OPERATOR_IS","exportJSONaction","resetAction","deleteAction","duplicatePatternAction","duplicateTemplatePartAction","usePatternSettings","unlock","usePatterns","PatternsHeader","useLink","useAddedBy","useEditPostAction","ExperimentalBlockEditorProvider","useGlobalStyle","usePostActions","useLocation","EMPTY_ARRAY","defaultConfigPerViewType","primaryField","mediaField","badgeFields","DEFAULT_VIEW","type","search","page","perPage","hiddenFields","layout","filters","SYNC_FILTERS","value","full","label","description","unsynced","PreviewWrapper","item","onClick","ariaDescribedBy","children","createElement","className","theme","undefined","title","Preview","categoryId","viewType","descriptionId","isUserPattern","user","isTemplatePart","isEmpty","blocks","length","backgroundColor","postType","postId","id","name","categoryType","canvas","style","viewportWidth","hidden","Author","isImageLoaded","setIsImageLoaded","text","icon","imageUrl","withIcon","alignment","spacing","onLoad","alt","src","Title","justify","as","gap","variant","tabIndex","placement","size","DataviewsPatterns","params","categoryIdFromURL","view","setView","isUncategorizedThemePatterns","previousCategoryId","viewSyncStatus","find","field","patterns","isResolving","syncStatus","records","per_page","authors","authorsSet","Set","forEach","template","add","author_text","Array","from","map","author","fields","_fields","header","render","enableSorting","enableHiding","width","push","elements","filterBy","operators","isPrimary","getValue","templatePart","data","paginationInfo","viewWithoutFilters","templatePartActions","patternActions","editAction","actions","filter","Boolean","onChangeView","newView","settings","hideTitleFromUI","titleId","getItemId","isLoading","supportedLayouts"],"sources":["@wordpress/edit-site/src/components/page-patterns/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalHStack as HStack,\n\tButton,\n\tTooltip,\n\tFlex,\n} from '@wordpress/components';\nimport { __, _x } from '@wordpress/i18n';\nimport {\n\tuseState,\n\tuseMemo,\n\tuseCallback,\n\tuseId,\n\tuseEffect,\n} from '@wordpress/element';\nimport {\n\tBlockPreview,\n\tprivateApis as blockEditorPrivateApis,\n} from '@wordpress/block-editor';\nimport { DataViews, filterSortAndPaginate } from '@wordpress/dataviews';\nimport { Icon, lockSmall } from '@wordpress/icons';\nimport { usePrevious } from '@wordpress/compose';\nimport { useEntityRecords } from '@wordpress/core-data';\nimport { privateApis as editorPrivateApis } from '@wordpress/editor';\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\n\n/**\n * Internal dependencies\n */\nimport { Async } from '../async';\nimport Page from '../page';\nimport {\n\tLAYOUT_GRID,\n\tLAYOUT_TABLE,\n\tLAYOUT_LIST,\n\tPATTERN_TYPES,\n\tTEMPLATE_PART_POST_TYPE,\n\tPATTERN_SYNC_TYPES,\n\tPATTERN_DEFAULT_CATEGORY,\n\tOPERATOR_IS,\n} from '../../utils/constants';\nimport {\n\texportJSONaction,\n\tresetAction,\n\tdeleteAction,\n\tduplicatePatternAction,\n\tduplicateTemplatePartAction,\n} from './dataviews-pattern-actions';\nimport usePatternSettings from './use-pattern-settings';\nimport { unlock } from '../../lock-unlock';\nimport usePatterns from './use-patterns';\nimport PatternsHeader from './header';\nimport { useLink } from '../routes/link';\nimport { useAddedBy } from '../page-templates/hooks';\nimport { useEditPostAction } from '../dataviews-actions';\n\nconst { ExperimentalBlockEditorProvider, useGlobalStyle } = unlock(\n\tblockEditorPrivateApis\n);\nconst { usePostActions } = unlock( editorPrivateApis );\nconst { useLocation } = unlock( routerPrivateApis );\n\nconst EMPTY_ARRAY = [];\nconst defaultConfigPerViewType = {\n\t[ LAYOUT_TABLE ]: {\n\t\tprimaryField: 'title',\n\t},\n\t[ LAYOUT_GRID ]: {\n\t\tmediaField: 'preview',\n\t\tprimaryField: 'title',\n\t\tbadgeFields: [ 'sync-status' ],\n\t},\n};\nconst DEFAULT_VIEW = {\n\ttype: LAYOUT_GRID,\n\tsearch: '',\n\tpage: 1,\n\tperPage: 20,\n\thiddenFields: [],\n\tlayout: {\n\t\t...defaultConfigPerViewType[ LAYOUT_GRID ],\n\t},\n\tfilters: [],\n};\n\nconst SYNC_FILTERS = [\n\t{\n\t\tvalue: PATTERN_SYNC_TYPES.full,\n\t\tlabel: _x( 'Synced', 'Option that shows all synchronized patterns' ),\n\t\tdescription: __( 'Patterns that are kept in sync across the site.' ),\n\t},\n\t{\n\t\tvalue: PATTERN_SYNC_TYPES.unsynced,\n\t\tlabel: _x(\n\t\t\t'Not synced',\n\t\t\t'Option that shows all patterns that are not synchronized'\n\t\t),\n\t\tdescription: __(\n\t\t\t'Patterns that can be changed freely without affecting the site.'\n\t\t),\n\t},\n];\n\nfunction PreviewWrapper( { item, onClick, ariaDescribedBy, children } ) {\n\treturn (\n\t\t<button\n\t\t\tclassName=\"page-patterns-preview-field__button\"\n\t\t\ttype=\"button\"\n\t\t\tonClick={ item.type !== PATTERN_TYPES.theme ? onClick : undefined }\n\t\t\taria-label={ item.title }\n\t\t\taria-describedby={ ariaDescribedBy }\n\t\t\taria-disabled={ item.type === PATTERN_TYPES.theme }\n\t\t>\n\t\t\t{ children }\n\t\t</button>\n\t);\n}\n\nfunction Preview( { item, categoryId, viewType } ) {\n\tconst descriptionId = useId();\n\tconst isUserPattern = item.type === PATTERN_TYPES.user;\n\tconst isTemplatePart = item.type === TEMPLATE_PART_POST_TYPE;\n\tconst isEmpty = ! item.blocks?.length;\n\n\tconst [ backgroundColor ] = useGlobalStyle( 'color.background' );\n\tconst { onClick } = useLink( {\n\t\tpostType: item.type,\n\t\tpostId: isUserPattern ? item.id : item.name,\n\t\tcategoryId,\n\t\tcategoryType: isTemplatePart ? item.type : PATTERN_TYPES.theme,\n\t\tcanvas: 'edit',\n\t} );\n\n\treturn (\n\t\t<div\n\t\t\tclassName={ `page-patterns-preview-field is-viewtype-${ viewType }` }\n\t\t\tstyle={ { backgroundColor } }\n\t\t>\n\t\t\t<PreviewWrapper\n\t\t\t\titem={ item }\n\t\t\t\tonClick={ onClick }\n\t\t\t\tariaDescribedBy={ item.description ? descriptionId : undefined }\n\t\t\t>\n\t\t\t\t{ isEmpty && isTemplatePart && __( 'Empty template part' ) }\n\t\t\t\t{ isEmpty && ! isTemplatePart && __( 'Empty pattern' ) }\n\t\t\t\t{ ! isEmpty && (\n\t\t\t\t\t<Async>\n\t\t\t\t\t\t<BlockPreview\n\t\t\t\t\t\t\tblocks={ item.blocks }\n\t\t\t\t\t\t\tviewportWidth={ item.viewportWidth }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</Async>\n\t\t\t\t) }\n\t\t\t</PreviewWrapper>\n\t\t\t{ item.description && (\n\t\t\t\t<div hidden id={ descriptionId }>\n\t\t\t\t\t{ item.description }\n\t\t\t\t</div>\n\t\t\t) }\n\t\t</div>\n\t);\n}\n\nfunction Author( { item, viewType } ) {\n\tconst [ isImageLoaded, setIsImageLoaded ] = useState( false );\n\tconst { text, icon, imageUrl } = useAddedBy( item.type, item.id );\n\tconst withIcon = viewType !== LAYOUT_LIST;\n\n\treturn (\n\t\t<HStack alignment=\"left\" spacing={ 1 }>\n\t\t\t{ withIcon && imageUrl && (\n\t\t\t\t<div\n\t\t\t\t\tclassName={ clsx( 'page-templates-author-field__avatar', {\n\t\t\t\t\t\t'is-loaded': isImageLoaded,\n\t\t\t\t\t} ) }\n\t\t\t\t>\n\t\t\t\t\t<img\n\t\t\t\t\t\tonLoad={ () => setIsImageLoaded( true ) }\n\t\t\t\t\t\talt=\"\"\n\t\t\t\t\t\tsrc={ imageUrl }\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t) }\n\t\t\t{ withIcon && ! imageUrl && (\n\t\t\t\t<div className=\"page-templates-author-field__icon\">\n\t\t\t\t\t<Icon icon={ icon } />\n\t\t\t\t</div>\n\t\t\t) }\n\t\t\t<span className=\"page-templates-author-field__name\">{ text }</span>\n\t\t</HStack>\n\t);\n}\n\nfunction Title( { item, categoryId } ) {\n\tconst isUserPattern = item.type === PATTERN_TYPES.user;\n\tconst isTemplatePart = item.type === TEMPLATE_PART_POST_TYPE;\n\tconst { onClick } = useLink( {\n\t\tpostType: item.type,\n\t\tpostId: isUserPattern ? item.id : item.name,\n\t\tcategoryId,\n\t\tcategoryType: isTemplatePart ? item.type : PATTERN_TYPES.theme,\n\t\tcanvas: 'edit',\n\t} );\n\treturn (\n\t\t<HStack alignment=\"center\" justify=\"flex-start\" spacing={ 2 }>\n\t\t\t<Flex\n\t\t\t\tas=\"div\"\n\t\t\t\tgap={ 0 }\n\t\t\t\tjustify=\"left\"\n\t\t\t\tclassName=\"edit-site-patterns__pattern-title\"\n\t\t\t>\n\t\t\t\t{ item.type === PATTERN_TYPES.theme ? (\n\t\t\t\t\titem.title\n\t\t\t\t) : (\n\t\t\t\t\t<Button\n\t\t\t\t\t\tvariant=\"link\"\n\t\t\t\t\t\tonClick={ onClick }\n\t\t\t\t\t\t// Required for the grid's roving tab index system.\n\t\t\t\t\t\t// See https://github.com/WordPress/gutenberg/pull/51898#discussion_r1243399243.\n\t\t\t\t\t\ttabIndex=\"-1\"\n\t\t\t\t\t>\n\t\t\t\t\t\t{ item.title || item.name }\n\t\t\t\t\t</Button>\n\t\t\t\t) }\n\t\t\t</Flex>\n\t\t\t{ item.type === PATTERN_TYPES.theme && (\n\t\t\t\t<Tooltip\n\t\t\t\t\tplacement=\"top\"\n\t\t\t\t\ttext={ __( 'This pattern cannot be edited.' ) }\n\t\t\t\t>\n\t\t\t\t\t<Icon\n\t\t\t\t\t\tclassName=\"edit-site-patterns__pattern-lock-icon\"\n\t\t\t\t\t\ticon={ lockSmall }\n\t\t\t\t\t\tsize={ 24 }\n\t\t\t\t\t/>\n\t\t\t\t</Tooltip>\n\t\t\t) }\n\t\t</HStack>\n\t);\n}\n\nexport default function DataviewsPatterns() {\n\tconst {\n\t\tparams: { categoryType, categoryId: categoryIdFromURL },\n\t} = useLocation();\n\tconst type = categoryType || PATTERN_TYPES.theme;\n\tconst categoryId = categoryIdFromURL || PATTERN_DEFAULT_CATEGORY;\n\tconst [ view, setView ] = useState( DEFAULT_VIEW );\n\tconst isUncategorizedThemePatterns =\n\t\ttype === PATTERN_TYPES.theme && categoryId === 'uncategorized';\n\tconst previousCategoryId = usePrevious( categoryId );\n\tconst viewSyncStatus = view.filters?.find(\n\t\t( { field } ) => field === 'sync-status'\n\t)?.value;\n\tconst { patterns, isResolving } = usePatterns(\n\t\ttype,\n\t\tisUncategorizedThemePatterns ? '' : categoryId,\n\t\t{\n\t\t\tsearch: view.search,\n\t\t\tsyncStatus: viewSyncStatus,\n\t\t}\n\t);\n\n\tconst { records } = useEntityRecords( 'postType', TEMPLATE_PART_POST_TYPE, {\n\t\tper_page: -1,\n\t} );\n\tconst authors = useMemo( () => {\n\t\tif ( ! records ) {\n\t\t\treturn EMPTY_ARRAY;\n\t\t}\n\t\tconst authorsSet = new Set();\n\t\trecords.forEach( ( template ) => {\n\t\t\tauthorsSet.add( template.author_text );\n\t\t} );\n\t\treturn Array.from( authorsSet ).map( ( author ) => ( {\n\t\t\tvalue: author,\n\t\t\tlabel: author,\n\t\t} ) );\n\t}, [ records ] );\n\n\tconst fields = useMemo( () => {\n\t\tconst _fields = [\n\t\t\t{\n\t\t\t\theader: __( 'Preview' ),\n\t\t\t\tid: 'preview',\n\t\t\t\trender: ( { item } ) => (\n\t\t\t\t\t<Preview\n\t\t\t\t\t\titem={ item }\n\t\t\t\t\t\tcategoryId={ categoryId }\n\t\t\t\t\t\tviewType={ view.type }\n\t\t\t\t\t/>\n\t\t\t\t),\n\t\t\t\tenableSorting: false,\n\t\t\t\tenableHiding: false,\n\t\t\t\twidth: '1%',\n\t\t\t},\n\t\t\t{\n\t\t\t\theader: __( 'Title' ),\n\t\t\t\tid: 'title',\n\t\t\t\trender: ( { item } ) => (\n\t\t\t\t\t<Title item={ item } categoryId={ categoryId } />\n\t\t\t\t),\n\t\t\t\tenableHiding: false,\n\t\t\t},\n\t\t];\n\n\t\tif ( type === PATTERN_TYPES.theme ) {\n\t\t\t_fields.push( {\n\t\t\t\theader: __( 'Sync status' ),\n\t\t\t\tid: 'sync-status',\n\t\t\t\trender: ( { item } ) => {\n\t\t\t\t\t// User patterns can have their sync statuses checked directly.\n\t\t\t\t\t// Non-user patterns are all unsynced for the time being.\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<span\n\t\t\t\t\t\t\tclassName={ `edit-site-patterns__field-sync-status-${ item.syncStatus }` }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ SYNC_FILTERS.find(\n\t\t\t\t\t\t\t\t( { value } ) => value === item.syncStatus\n\t\t\t\t\t\t\t)?.label ||\n\t\t\t\t\t\t\t\tSYNC_FILTERS.find(\n\t\t\t\t\t\t\t\t\t( { value } ) =>\n\t\t\t\t\t\t\t\t\t\tvalue === PATTERN_SYNC_TYPES.unsynced\n\t\t\t\t\t\t\t\t).label }\n\t\t\t\t\t\t</span>\n\t\t\t\t\t);\n\t\t\t\t},\n\t\t\t\telements: SYNC_FILTERS,\n\t\t\t\tfilterBy: {\n\t\t\t\t\toperators: [ OPERATOR_IS ],\n\t\t\t\t\tisPrimary: true,\n\t\t\t\t},\n\t\t\t\tenableSorting: false,\n\t\t\t} );\n\t\t} else if ( type === TEMPLATE_PART_POST_TYPE ) {\n\t\t\t_fields.push( {\n\t\t\t\theader: __( 'Author' ),\n\t\t\t\tid: 'author',\n\t\t\t\tgetValue: ( { item } ) => item.templatePart.author_text,\n\t\t\t\trender: ( { item } ) => {\n\t\t\t\t\treturn <Author viewType={ view.type } item={ item } />;\n\t\t\t\t},\n\t\t\t\telements: authors,\n\t\t\t\tfilterBy: {\n\t\t\t\t\tisPrimary: true,\n\t\t\t\t},\n\t\t\t\twidth: '1%',\n\t\t\t} );\n\t\t}\n\n\t\treturn _fields;\n\t}, [ view.type, categoryId, type, authors ] );\n\n\t// Reset the page number when the category changes.\n\tuseEffect( () => {\n\t\tif ( previousCategoryId !== categoryId ) {\n\t\t\tsetView( DEFAULT_VIEW );\n\t\t}\n\t}, [ categoryId, previousCategoryId ] );\n\tconst { data, paginationInfo } = useMemo( () => {\n\t\t// Search is managed server-side as well as filters for patterns.\n\t\t// However, the author filter in template parts is done client-side.\n\t\tconst viewWithoutFilters = { ...view };\n\t\tdelete viewWithoutFilters.search;\n\t\tif ( type !== TEMPLATE_PART_POST_TYPE ) {\n\t\t\tviewWithoutFilters.filters = [];\n\t\t}\n\t\treturn filterSortAndPaginate( patterns, viewWithoutFilters, fields );\n\t}, [ patterns, view, fields, type ] );\n\n\tconst templatePartActions = usePostActions( TEMPLATE_PART_POST_TYPE );\n\tconst patternActions = usePostActions( PATTERN_TYPES.user );\n\tconst editAction = useEditPostAction();\n\n\tconst actions = useMemo( () => {\n\t\tif ( type === TEMPLATE_PART_POST_TYPE ) {\n\t\t\treturn [\n\t\t\t\teditAction,\n\t\t\t\t...templatePartActions,\n\t\t\t\tduplicateTemplatePartAction,\n\t\t\t\tresetAction,\n\t\t\t\tdeleteAction,\n\t\t\t].filter( Boolean );\n\t\t}\n\t\treturn [\n\t\t\teditAction,\n\t\t\t...patternActions,\n\t\t\tduplicatePatternAction,\n\t\t\texportJSONaction,\n\t\t\tresetAction,\n\t\t\tdeleteAction,\n\t\t].filter( Boolean );\n\t}, [ editAction, type, templatePartActions, patternActions ] );\n\tconst onChangeView = useCallback(\n\t\t( newView ) => {\n\t\t\tif ( newView.type !== view.type ) {\n\t\t\t\tnewView = {\n\t\t\t\t\t...newView,\n\t\t\t\t\tlayout: {\n\t\t\t\t\t\t...defaultConfigPerViewType[ newView.type ],\n\t\t\t\t\t},\n\t\t\t\t};\n\t\t\t}\n\t\t\tsetView( newView );\n\t\t},\n\t\t[ view.type, setView ]\n\t);\n\tconst id = useId();\n\tconst settings = usePatternSettings();\n\t// Wrap everything in a block editor provider.\n\t// This ensures 'styles' that are needed for the previews are synced\n\t// from the site editor store to the block editor store.\n\treturn (\n\t\t<ExperimentalBlockEditorProvider settings={ settings }>\n\t\t\t<Page\n\t\t\t\ttitle={ __( 'Patterns content' ) }\n\t\t\t\tclassName=\"edit-site-page-patterns-dataviews\"\n\t\t\t\thideTitleFromUI\n\t\t\t>\n\t\t\t\t<PatternsHeader\n\t\t\t\t\tcategoryId={ categoryId }\n\t\t\t\t\ttype={ type }\n\t\t\t\t\ttitleId={ `${ id }-title` }\n\t\t\t\t\tdescriptionId={ `${ id }-description` }\n\t\t\t\t/>\n\t\t\t\t<DataViews\n\t\t\t\t\tpaginationInfo={ paginationInfo }\n\t\t\t\t\tfields={ fields }\n\t\t\t\t\tactions={ actions }\n\t\t\t\t\tdata={ data || EMPTY_ARRAY }\n\t\t\t\t\tgetItemId={ ( item ) => item.name }\n\t\t\t\t\tisLoading={ isResolving }\n\t\t\t\t\tview={ view }\n\t\t\t\t\tonChangeView={ onChangeView }\n\t\t\t\t\tsupportedLayouts={ [ LAYOUT_GRID, LAYOUT_TABLE ] }\n\t\t\t\t/>\n\t\t\t</Page>\n\t\t</ExperimentalBlockEditorProvider>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -2,7 +2,7 @@ import { createElement, Fragment } from "react";
|
|
|
2
2
|
/**
|
|
3
3
|
* External dependencies
|
|
4
4
|
*/
|
|
5
|
-
import
|
|
5
|
+
import clsx from 'clsx';
|
|
6
6
|
|
|
7
7
|
/**
|
|
8
8
|
* WordPress dependencies
|
|
@@ -29,6 +29,7 @@ import { useAddedBy } from './hooks';
|
|
|
29
29
|
import { TEMPLATE_POST_TYPE, OPERATOR_IS_ANY, LAYOUT_GRID, LAYOUT_TABLE, LAYOUT_LIST } from '../../utils/constants';
|
|
30
30
|
import usePatternSettings from '../page-patterns/use-pattern-settings';
|
|
31
31
|
import { unlock } from '../../lock-unlock';
|
|
32
|
+
import { useEditPostAction } from '../dataviews-actions';
|
|
32
33
|
const {
|
|
33
34
|
usePostActions
|
|
34
35
|
} = unlock(editorPrivateApis);
|
|
@@ -103,7 +104,7 @@ function AuthorField({
|
|
|
103
104
|
alignment: "left",
|
|
104
105
|
spacing: 1
|
|
105
106
|
}, withIcon && imageUrl && createElement("div", {
|
|
106
|
-
className:
|
|
107
|
+
className: clsx('page-templates-author-field__avatar', {
|
|
107
108
|
'is-loaded': isImageLoaded
|
|
108
109
|
})
|
|
109
110
|
}, createElement("img", {
|
|
@@ -160,7 +161,6 @@ function Preview({
|
|
|
160
161
|
blocks: blocks
|
|
161
162
|
})))));
|
|
162
163
|
}
|
|
163
|
-
const TEMPLATE_ACTIONS = ['edit-post', 'reset-template', 'rename-template', 'view-post-revisions', 'delete-template'];
|
|
164
164
|
export default function PageTemplates() {
|
|
165
165
|
const {
|
|
166
166
|
params
|
|
@@ -290,17 +290,9 @@ export default function PageTemplates() {
|
|
|
290
290
|
} = useMemo(() => {
|
|
291
291
|
return filterSortAndPaginate(records, view, fields);
|
|
292
292
|
}, [records, view, fields]);
|
|
293
|
-
const
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
history.push({
|
|
297
|
-
postId: post.id,
|
|
298
|
-
postType: post.type,
|
|
299
|
-
canvas: 'edit'
|
|
300
|
-
});
|
|
301
|
-
}
|
|
302
|
-
}, [history]);
|
|
303
|
-
const actions = usePostActions(onActionPerformed, TEMPLATE_ACTIONS);
|
|
293
|
+
const postTypeActions = usePostActions(TEMPLATE_POST_TYPE);
|
|
294
|
+
const editAction = useEditPostAction();
|
|
295
|
+
const actions = useMemo(() => [editAction, ...postTypeActions], [postTypeActions, editAction]);
|
|
304
296
|
const onChangeView = useCallback(newView => {
|
|
305
297
|
if (newView.type !== view.type) {
|
|
306
298
|
newView = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["classnames","Icon","__experimentalText","Text","__experimentalHStack","HStack","VisuallyHidden","__","useState","useMemo","useCallback","useEffect","useEntityRecords","decodeEntities","parse","BlockPreview","privateApis","blockEditorPrivateApis","DataViews","filterSortAndPaginate","routerPrivateApis","editorPrivateApis","Async","Page","default","Link","useLink","AddNewTemplate","useAddedBy","TEMPLATE_POST_TYPE","OPERATOR_IS_ANY","LAYOUT_GRID","LAYOUT_TABLE","LAYOUT_LIST","usePatternSettings","unlock","usePostActions","ExperimentalBlockEditorProvider","useGlobalStyle","useHistory","useLocation","EMPTY_ARRAY","defaultConfigPerViewType","primaryField","mediaField","columnFields","DEFAULT_VIEW","type","search","page","perPage","sort","field","direction","hiddenFields","layout","filters","Title","item","viewType","title","rendered","linkProps","params","postId","id","postType","canvas","createElement","AuthorField","isImageLoaded","setIsImageLoaded","text","icon","imageUrl","withIcon","alignment","spacing","className","onLoad","alt","src","Preview","settings","backgroundColor","blocks","content","raw","onClick","isEmpty","length","style","TEMPLATE_ACTIONS","PageTemplates","activeView","defaultView","usedType","operator","value","view","setView","currentView","records","isResolving","isLoadingData","per_page","history","onSelectionChange","items","push","undefined","authors","authorsSet","Set","forEach","template","add","author_text","Array","from","map","author","label","fields","header","render","minWidth","maxWidth","enableSorting","getValue","enableHiding","enableGlobalSearch","description","Fragment","variant","elements","width","data","paginationInfo","onActionPerformed","actionId","post","actions","onChangeView","newView","isLoading"],"sources":["@wordpress/edit-site/src/components/page-templates/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tIcon,\n\t__experimentalText as Text,\n\t__experimentalHStack as HStack,\n\tVisuallyHidden,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { useState, useMemo, useCallback, useEffect } from '@wordpress/element';\nimport { useEntityRecords } from '@wordpress/core-data';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { parse } from '@wordpress/blocks';\nimport {\n\tBlockPreview,\n\tprivateApis as blockEditorPrivateApis,\n} from '@wordpress/block-editor';\nimport { DataViews, filterSortAndPaginate } from '@wordpress/dataviews';\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\nimport { privateApis as editorPrivateApis } from '@wordpress/editor';\n\n/**\n * Internal dependencies\n */\nimport { Async } from '../async';\nimport Page from '../page';\nimport { default as Link, useLink } from '../routes/link';\nimport AddNewTemplate from '../add-new-template';\nimport { useAddedBy } from './hooks';\nimport {\n\tTEMPLATE_POST_TYPE,\n\tOPERATOR_IS_ANY,\n\tLAYOUT_GRID,\n\tLAYOUT_TABLE,\n\tLAYOUT_LIST,\n} from '../../utils/constants';\n\nimport usePatternSettings from '../page-patterns/use-pattern-settings';\nimport { unlock } from '../../lock-unlock';\n\nconst { usePostActions } = unlock( editorPrivateApis );\n\nconst { ExperimentalBlockEditorProvider, useGlobalStyle } = unlock(\n\tblockEditorPrivateApis\n);\nconst { useHistory, useLocation } = unlock( routerPrivateApis );\n\nconst EMPTY_ARRAY = [];\n\nconst defaultConfigPerViewType = {\n\t[ LAYOUT_TABLE ]: {\n\t\tprimaryField: 'title',\n\t},\n\t[ LAYOUT_GRID ]: {\n\t\tmediaField: 'preview',\n\t\tprimaryField: 'title',\n\t\tcolumnFields: [ 'description' ],\n\t},\n\t[ LAYOUT_LIST ]: {\n\t\tprimaryField: 'title',\n\t\tmediaField: 'preview',\n\t},\n};\n\nconst DEFAULT_VIEW = {\n\ttype: LAYOUT_GRID,\n\tsearch: '',\n\tpage: 1,\n\tperPage: 20,\n\tsort: {\n\t\tfield: 'title',\n\t\tdirection: 'asc',\n\t},\n\t// All fields are visible by default, so it's\n\t// better to keep track of the hidden ones.\n\thiddenFields: [ 'preview' ],\n\tlayout: defaultConfigPerViewType[ LAYOUT_GRID ],\n\tfilters: [],\n};\n\nfunction Title( { item, viewType } ) {\n\tif ( viewType === LAYOUT_LIST ) {\n\t\treturn decodeEntities( item.title?.rendered ) || __( '(no title)' );\n\t}\n\tconst linkProps = {\n\t\tparams: {\n\t\t\tpostId: item.id,\n\t\t\tpostType: item.type,\n\t\t\tcanvas: 'edit',\n\t\t},\n\t};\n\treturn (\n\t\t<Link { ...linkProps }>\n\t\t\t{ decodeEntities( item.title?.rendered ) || __( '(no title)' ) }\n\t\t</Link>\n\t);\n}\n\nfunction AuthorField( { item, viewType } ) {\n\tconst [ isImageLoaded, setIsImageLoaded ] = useState( false );\n\tconst { text, icon, imageUrl } = useAddedBy( item.type, item.id );\n\tconst withIcon = viewType !== LAYOUT_LIST;\n\n\treturn (\n\t\t<HStack alignment=\"left\" spacing={ 1 }>\n\t\t\t{ withIcon && imageUrl && (\n\t\t\t\t<div\n\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\t'page-templates-author-field__avatar',\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t'is-loaded': isImageLoaded,\n\t\t\t\t\t\t}\n\t\t\t\t\t) }\n\t\t\t\t>\n\t\t\t\t\t<img\n\t\t\t\t\t\tonLoad={ () => setIsImageLoaded( true ) }\n\t\t\t\t\t\talt=\"\"\n\t\t\t\t\t\tsrc={ imageUrl }\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t) }\n\t\t\t{ withIcon && ! imageUrl && (\n\t\t\t\t<div className=\"page-templates-author-field__icon\">\n\t\t\t\t\t<Icon icon={ icon } />\n\t\t\t\t</div>\n\t\t\t) }\n\t\t\t<span className=\"page-templates-author-field__name\">{ text }</span>\n\t\t</HStack>\n\t);\n}\n\nfunction Preview( { item, viewType } ) {\n\tconst settings = usePatternSettings();\n\tconst [ backgroundColor = 'white' ] = useGlobalStyle( 'color.background' );\n\tconst blocks = useMemo( () => {\n\t\treturn parse( item.content.raw );\n\t}, [ item.content.raw ] );\n\tconst { onClick } = useLink( {\n\t\tpostId: item.id,\n\t\tpostType: item.type,\n\t\tcanvas: 'edit',\n\t} );\n\n\tconst isEmpty = ! blocks?.length;\n\t// Wrap everything in a block editor provider to ensure 'styles' that are needed\n\t// for the previews are synced between the site editor store and the block editor store.\n\t// Additionally we need to have the `__experimentalBlockPatterns` setting in order to\n\t// render patterns inside the previews.\n\t// TODO: Same approach is used in the patterns list and it becomes obvious that some of\n\t// the block editor settings are needed in context where we don't have the block editor.\n\t// Explore how we can solve this in a better way.\n\treturn (\n\t\t<ExperimentalBlockEditorProvider settings={ settings }>\n\t\t\t<div\n\t\t\t\tclassName={ `page-templates-preview-field is-viewtype-${ viewType }` }\n\t\t\t\tstyle={ { backgroundColor } }\n\t\t\t>\n\t\t\t\t{ viewType === LAYOUT_LIST && ! isEmpty && (\n\t\t\t\t\t<Async>\n\t\t\t\t\t\t<BlockPreview blocks={ blocks } />\n\t\t\t\t\t</Async>\n\t\t\t\t) }\n\t\t\t\t{ viewType !== LAYOUT_LIST && (\n\t\t\t\t\t<button\n\t\t\t\t\t\tclassName=\"page-templates-preview-field__button\"\n\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\tonClick={ onClick }\n\t\t\t\t\t\taria-label={ item.title?.rendered || item.title }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ isEmpty && __( 'Empty template' ) }\n\t\t\t\t\t\t{ ! isEmpty && (\n\t\t\t\t\t\t\t<Async>\n\t\t\t\t\t\t\t\t<BlockPreview blocks={ blocks } />\n\t\t\t\t\t\t\t</Async>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</button>\n\t\t\t\t) }\n\t\t\t</div>\n\t\t</ExperimentalBlockEditorProvider>\n\t);\n}\n\nconst TEMPLATE_ACTIONS = [\n\t'edit-post',\n\t'reset-template',\n\t'rename-template',\n\t'view-post-revisions',\n\t'delete-template',\n];\n\nexport default function PageTemplates() {\n\tconst { params } = useLocation();\n\tconst { activeView = 'all', layout } = params;\n\tconst defaultView = useMemo( () => {\n\t\tconst usedType = layout ?? DEFAULT_VIEW.type;\n\t\treturn {\n\t\t\t...DEFAULT_VIEW,\n\t\t\ttype: usedType,\n\t\t\tlayout: defaultConfigPerViewType[ usedType ],\n\t\t\tfilters:\n\t\t\t\tactiveView !== 'all'\n\t\t\t\t\t? [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tfield: 'author',\n\t\t\t\t\t\t\t\toperator: 'isAny',\n\t\t\t\t\t\t\t\tvalue: [ activeView ],\n\t\t\t\t\t\t\t},\n\t\t\t\t\t ]\n\t\t\t\t\t: [],\n\t\t};\n\t}, [ layout, activeView ] );\n\tconst [ view, setView ] = useState( defaultView );\n\tuseEffect( () => {\n\t\tsetView( ( currentView ) => ( {\n\t\t\t...currentView,\n\t\t\tfilters:\n\t\t\t\tactiveView !== 'all'\n\t\t\t\t\t? [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tfield: 'author',\n\t\t\t\t\t\t\t\toperator: OPERATOR_IS_ANY,\n\t\t\t\t\t\t\t\tvalue: [ activeView ],\n\t\t\t\t\t\t\t},\n\t\t\t\t\t ]\n\t\t\t\t\t: [],\n\t\t} ) );\n\t}, [ activeView ] );\n\n\tconst { records, isResolving: isLoadingData } = useEntityRecords(\n\t\t'postType',\n\t\tTEMPLATE_POST_TYPE,\n\t\t{\n\t\t\tper_page: -1,\n\t\t}\n\t);\n\tconst history = useHistory();\n\tconst onSelectionChange = useCallback(\n\t\t( items ) => {\n\t\t\tif ( view?.type === LAYOUT_LIST ) {\n\t\t\t\thistory.push( {\n\t\t\t\t\t...params,\n\t\t\t\t\tpostId: items.length === 1 ? items[ 0 ].id : undefined,\n\t\t\t\t} );\n\t\t\t}\n\t\t},\n\t\t[ history, params, view?.type ]\n\t);\n\n\tconst authors = useMemo( () => {\n\t\tif ( ! records ) {\n\t\t\treturn EMPTY_ARRAY;\n\t\t}\n\t\tconst authorsSet = new Set();\n\t\trecords.forEach( ( template ) => {\n\t\t\tauthorsSet.add( template.author_text );\n\t\t} );\n\t\treturn Array.from( authorsSet ).map( ( author ) => ( {\n\t\t\tvalue: author,\n\t\t\tlabel: author,\n\t\t} ) );\n\t}, [ records ] );\n\n\tconst fields = useMemo(\n\t\t() => [\n\t\t\t{\n\t\t\t\theader: __( 'Preview' ),\n\t\t\t\tid: 'preview',\n\t\t\t\trender: ( { item } ) => {\n\t\t\t\t\treturn <Preview item={ item } viewType={ view.type } />;\n\t\t\t\t},\n\t\t\t\tminWidth: 120,\n\t\t\t\tmaxWidth: 120,\n\t\t\t\tenableSorting: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\theader: __( 'Template' ),\n\t\t\t\tid: 'title',\n\t\t\t\tgetValue: ( { item } ) => item.title?.rendered,\n\t\t\t\trender: ( { item } ) => (\n\t\t\t\t\t<Title item={ item } viewType={ view.type } />\n\t\t\t\t),\n\t\t\t\tmaxWidth: 400,\n\t\t\t\tenableHiding: false,\n\t\t\t\tenableGlobalSearch: true,\n\t\t\t},\n\t\t\t{\n\t\t\t\theader: __( 'Description' ),\n\t\t\t\tid: 'description',\n\t\t\t\trender: ( { item } ) => {\n\t\t\t\t\treturn item.description ? (\n\t\t\t\t\t\t<span className=\"page-templates-description\">\n\t\t\t\t\t\t\t{ decodeEntities( item.description ) }\n\t\t\t\t\t\t</span>\n\t\t\t\t\t) : (\n\t\t\t\t\t\tview.type === LAYOUT_TABLE && (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t<Text variant=\"muted\" aria-hidden=\"true\">\n\t\t\t\t\t\t\t\t\t—\n\t\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t\t\t<VisuallyHidden>\n\t\t\t\t\t\t\t\t\t{ __( 'No description.' ) }\n\t\t\t\t\t\t\t\t</VisuallyHidden>\n\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t)\n\t\t\t\t\t);\n\t\t\t\t},\n\t\t\t\tmaxWidth: 400,\n\t\t\t\tminWidth: 320,\n\t\t\t\tenableSorting: false,\n\t\t\t\tenableGlobalSearch: true,\n\t\t\t},\n\t\t\t{\n\t\t\t\theader: __( 'Author' ),\n\t\t\t\tid: 'author',\n\t\t\t\tgetValue: ( { item } ) => item.author_text,\n\t\t\t\trender: ( { item } ) => {\n\t\t\t\t\treturn <AuthorField viewType={ view.type } item={ item } />;\n\t\t\t\t},\n\t\t\t\telements: authors,\n\t\t\t\twidth: '1%',\n\t\t\t},\n\t\t],\n\t\t[ authors, view.type ]\n\t);\n\n\tconst { data, paginationInfo } = useMemo( () => {\n\t\treturn filterSortAndPaginate( records, view, fields );\n\t}, [ records, view, fields ] );\n\n\tconst onActionPerformed = useCallback(\n\t\t( actionId, items ) => {\n\t\t\tif ( actionId === 'edit-post' ) {\n\t\t\t\tconst post = items[ 0 ];\n\t\t\t\thistory.push( {\n\t\t\t\t\tpostId: post.id,\n\t\t\t\t\tpostType: post.type,\n\t\t\t\t\tcanvas: 'edit',\n\t\t\t\t} );\n\t\t\t}\n\t\t},\n\t\t[ history ]\n\t);\n\n\tconst actions = usePostActions( onActionPerformed, TEMPLATE_ACTIONS );\n\n\tconst onChangeView = useCallback(\n\t\t( newView ) => {\n\t\t\tif ( newView.type !== view.type ) {\n\t\t\t\tnewView = {\n\t\t\t\t\t...newView,\n\t\t\t\t\tlayout: {\n\t\t\t\t\t\t...defaultConfigPerViewType[ newView.type ],\n\t\t\t\t\t},\n\t\t\t\t};\n\n\t\t\t\thistory.push( {\n\t\t\t\t\t...params,\n\t\t\t\t\tlayout: newView.type,\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\tsetView( newView );\n\t\t},\n\t\t[ view.type, setView, history, params ]\n\t);\n\n\treturn (\n\t\t<Page\n\t\t\tclassName=\"edit-site-page-templates\"\n\t\t\ttitle={ __( 'Templates' ) }\n\t\t\tactions={ <AddNewTemplate /> }\n\t\t>\n\t\t\t<DataViews\n\t\t\t\tpaginationInfo={ paginationInfo }\n\t\t\t\tfields={ fields }\n\t\t\t\tactions={ actions }\n\t\t\t\tdata={ data }\n\t\t\t\tisLoading={ isLoadingData }\n\t\t\t\tview={ view }\n\t\t\t\tonChangeView={ onChangeView }\n\t\t\t\tonSelectionChange={ onSelectionChange }\n\t\t\t/>\n\t\t</Page>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["clsx","Icon","__experimentalText","Text","__experimentalHStack","HStack","VisuallyHidden","__","useState","useMemo","useCallback","useEffect","useEntityRecords","decodeEntities","parse","BlockPreview","privateApis","blockEditorPrivateApis","DataViews","filterSortAndPaginate","routerPrivateApis","editorPrivateApis","Async","Page","default","Link","useLink","AddNewTemplate","useAddedBy","TEMPLATE_POST_TYPE","OPERATOR_IS_ANY","LAYOUT_GRID","LAYOUT_TABLE","LAYOUT_LIST","usePatternSettings","unlock","useEditPostAction","usePostActions","ExperimentalBlockEditorProvider","useGlobalStyle","useHistory","useLocation","EMPTY_ARRAY","defaultConfigPerViewType","primaryField","mediaField","columnFields","DEFAULT_VIEW","type","search","page","perPage","sort","field","direction","hiddenFields","layout","filters","Title","item","viewType","title","rendered","linkProps","params","postId","id","postType","canvas","createElement","AuthorField","isImageLoaded","setIsImageLoaded","text","icon","imageUrl","withIcon","alignment","spacing","className","onLoad","alt","src","Preview","settings","backgroundColor","blocks","content","raw","onClick","isEmpty","length","style","PageTemplates","activeView","defaultView","usedType","operator","value","view","setView","currentView","records","isResolving","isLoadingData","per_page","history","onSelectionChange","items","push","undefined","authors","authorsSet","Set","forEach","template","add","author_text","Array","from","map","author","label","fields","header","render","minWidth","maxWidth","enableSorting","getValue","enableHiding","enableGlobalSearch","description","Fragment","variant","elements","width","data","paginationInfo","postTypeActions","editAction","actions","onChangeView","newView","isLoading"],"sources":["@wordpress/edit-site/src/components/page-templates/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tIcon,\n\t__experimentalText as Text,\n\t__experimentalHStack as HStack,\n\tVisuallyHidden,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { useState, useMemo, useCallback, useEffect } from '@wordpress/element';\nimport { useEntityRecords } from '@wordpress/core-data';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { parse } from '@wordpress/blocks';\nimport {\n\tBlockPreview,\n\tprivateApis as blockEditorPrivateApis,\n} from '@wordpress/block-editor';\nimport { DataViews, filterSortAndPaginate } from '@wordpress/dataviews';\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\nimport { privateApis as editorPrivateApis } from '@wordpress/editor';\n\n/**\n * Internal dependencies\n */\nimport { Async } from '../async';\nimport Page from '../page';\nimport { default as Link, useLink } from '../routes/link';\nimport AddNewTemplate from '../add-new-template';\nimport { useAddedBy } from './hooks';\nimport {\n\tTEMPLATE_POST_TYPE,\n\tOPERATOR_IS_ANY,\n\tLAYOUT_GRID,\n\tLAYOUT_TABLE,\n\tLAYOUT_LIST,\n} from '../../utils/constants';\n\nimport usePatternSettings from '../page-patterns/use-pattern-settings';\nimport { unlock } from '../../lock-unlock';\nimport { useEditPostAction } from '../dataviews-actions';\n\nconst { usePostActions } = unlock( editorPrivateApis );\n\nconst { ExperimentalBlockEditorProvider, useGlobalStyle } = unlock(\n\tblockEditorPrivateApis\n);\nconst { useHistory, useLocation } = unlock( routerPrivateApis );\n\nconst EMPTY_ARRAY = [];\n\nconst defaultConfigPerViewType = {\n\t[ LAYOUT_TABLE ]: {\n\t\tprimaryField: 'title',\n\t},\n\t[ LAYOUT_GRID ]: {\n\t\tmediaField: 'preview',\n\t\tprimaryField: 'title',\n\t\tcolumnFields: [ 'description' ],\n\t},\n\t[ LAYOUT_LIST ]: {\n\t\tprimaryField: 'title',\n\t\tmediaField: 'preview',\n\t},\n};\n\nconst DEFAULT_VIEW = {\n\ttype: LAYOUT_GRID,\n\tsearch: '',\n\tpage: 1,\n\tperPage: 20,\n\tsort: {\n\t\tfield: 'title',\n\t\tdirection: 'asc',\n\t},\n\t// All fields are visible by default, so it's\n\t// better to keep track of the hidden ones.\n\thiddenFields: [ 'preview' ],\n\tlayout: defaultConfigPerViewType[ LAYOUT_GRID ],\n\tfilters: [],\n};\n\nfunction Title( { item, viewType } ) {\n\tif ( viewType === LAYOUT_LIST ) {\n\t\treturn decodeEntities( item.title?.rendered ) || __( '(no title)' );\n\t}\n\tconst linkProps = {\n\t\tparams: {\n\t\t\tpostId: item.id,\n\t\t\tpostType: item.type,\n\t\t\tcanvas: 'edit',\n\t\t},\n\t};\n\treturn (\n\t\t<Link { ...linkProps }>\n\t\t\t{ decodeEntities( item.title?.rendered ) || __( '(no title)' ) }\n\t\t</Link>\n\t);\n}\n\nfunction AuthorField( { item, viewType } ) {\n\tconst [ isImageLoaded, setIsImageLoaded ] = useState( false );\n\tconst { text, icon, imageUrl } = useAddedBy( item.type, item.id );\n\tconst withIcon = viewType !== LAYOUT_LIST;\n\n\treturn (\n\t\t<HStack alignment=\"left\" spacing={ 1 }>\n\t\t\t{ withIcon && imageUrl && (\n\t\t\t\t<div\n\t\t\t\t\tclassName={ clsx( 'page-templates-author-field__avatar', {\n\t\t\t\t\t\t'is-loaded': isImageLoaded,\n\t\t\t\t\t} ) }\n\t\t\t\t>\n\t\t\t\t\t<img\n\t\t\t\t\t\tonLoad={ () => setIsImageLoaded( true ) }\n\t\t\t\t\t\talt=\"\"\n\t\t\t\t\t\tsrc={ imageUrl }\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t) }\n\t\t\t{ withIcon && ! imageUrl && (\n\t\t\t\t<div className=\"page-templates-author-field__icon\">\n\t\t\t\t\t<Icon icon={ icon } />\n\t\t\t\t</div>\n\t\t\t) }\n\t\t\t<span className=\"page-templates-author-field__name\">{ text }</span>\n\t\t</HStack>\n\t);\n}\n\nfunction Preview( { item, viewType } ) {\n\tconst settings = usePatternSettings();\n\tconst [ backgroundColor = 'white' ] = useGlobalStyle( 'color.background' );\n\tconst blocks = useMemo( () => {\n\t\treturn parse( item.content.raw );\n\t}, [ item.content.raw ] );\n\tconst { onClick } = useLink( {\n\t\tpostId: item.id,\n\t\tpostType: item.type,\n\t\tcanvas: 'edit',\n\t} );\n\n\tconst isEmpty = ! blocks?.length;\n\t// Wrap everything in a block editor provider to ensure 'styles' that are needed\n\t// for the previews are synced between the site editor store and the block editor store.\n\t// Additionally we need to have the `__experimentalBlockPatterns` setting in order to\n\t// render patterns inside the previews.\n\t// TODO: Same approach is used in the patterns list and it becomes obvious that some of\n\t// the block editor settings are needed in context where we don't have the block editor.\n\t// Explore how we can solve this in a better way.\n\treturn (\n\t\t<ExperimentalBlockEditorProvider settings={ settings }>\n\t\t\t<div\n\t\t\t\tclassName={ `page-templates-preview-field is-viewtype-${ viewType }` }\n\t\t\t\tstyle={ { backgroundColor } }\n\t\t\t>\n\t\t\t\t{ viewType === LAYOUT_LIST && ! isEmpty && (\n\t\t\t\t\t<Async>\n\t\t\t\t\t\t<BlockPreview blocks={ blocks } />\n\t\t\t\t\t</Async>\n\t\t\t\t) }\n\t\t\t\t{ viewType !== LAYOUT_LIST && (\n\t\t\t\t\t<button\n\t\t\t\t\t\tclassName=\"page-templates-preview-field__button\"\n\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\tonClick={ onClick }\n\t\t\t\t\t\taria-label={ item.title?.rendered || item.title }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ isEmpty && __( 'Empty template' ) }\n\t\t\t\t\t\t{ ! isEmpty && (\n\t\t\t\t\t\t\t<Async>\n\t\t\t\t\t\t\t\t<BlockPreview blocks={ blocks } />\n\t\t\t\t\t\t\t</Async>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</button>\n\t\t\t\t) }\n\t\t\t</div>\n\t\t</ExperimentalBlockEditorProvider>\n\t);\n}\n\nexport default function PageTemplates() {\n\tconst { params } = useLocation();\n\tconst { activeView = 'all', layout } = params;\n\tconst defaultView = useMemo( () => {\n\t\tconst usedType = layout ?? DEFAULT_VIEW.type;\n\t\treturn {\n\t\t\t...DEFAULT_VIEW,\n\t\t\ttype: usedType,\n\t\t\tlayout: defaultConfigPerViewType[ usedType ],\n\t\t\tfilters:\n\t\t\t\tactiveView !== 'all'\n\t\t\t\t\t? [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tfield: 'author',\n\t\t\t\t\t\t\t\toperator: 'isAny',\n\t\t\t\t\t\t\t\tvalue: [ activeView ],\n\t\t\t\t\t\t\t},\n\t\t\t\t\t ]\n\t\t\t\t\t: [],\n\t\t};\n\t}, [ layout, activeView ] );\n\tconst [ view, setView ] = useState( defaultView );\n\tuseEffect( () => {\n\t\tsetView( ( currentView ) => ( {\n\t\t\t...currentView,\n\t\t\tfilters:\n\t\t\t\tactiveView !== 'all'\n\t\t\t\t\t? [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tfield: 'author',\n\t\t\t\t\t\t\t\toperator: OPERATOR_IS_ANY,\n\t\t\t\t\t\t\t\tvalue: [ activeView ],\n\t\t\t\t\t\t\t},\n\t\t\t\t\t ]\n\t\t\t\t\t: [],\n\t\t} ) );\n\t}, [ activeView ] );\n\n\tconst { records, isResolving: isLoadingData } = useEntityRecords(\n\t\t'postType',\n\t\tTEMPLATE_POST_TYPE,\n\t\t{\n\t\t\tper_page: -1,\n\t\t}\n\t);\n\tconst history = useHistory();\n\tconst onSelectionChange = useCallback(\n\t\t( items ) => {\n\t\t\tif ( view?.type === LAYOUT_LIST ) {\n\t\t\t\thistory.push( {\n\t\t\t\t\t...params,\n\t\t\t\t\tpostId: items.length === 1 ? items[ 0 ].id : undefined,\n\t\t\t\t} );\n\t\t\t}\n\t\t},\n\t\t[ history, params, view?.type ]\n\t);\n\n\tconst authors = useMemo( () => {\n\t\tif ( ! records ) {\n\t\t\treturn EMPTY_ARRAY;\n\t\t}\n\t\tconst authorsSet = new Set();\n\t\trecords.forEach( ( template ) => {\n\t\t\tauthorsSet.add( template.author_text );\n\t\t} );\n\t\treturn Array.from( authorsSet ).map( ( author ) => ( {\n\t\t\tvalue: author,\n\t\t\tlabel: author,\n\t\t} ) );\n\t}, [ records ] );\n\n\tconst fields = useMemo(\n\t\t() => [\n\t\t\t{\n\t\t\t\theader: __( 'Preview' ),\n\t\t\t\tid: 'preview',\n\t\t\t\trender: ( { item } ) => {\n\t\t\t\t\treturn <Preview item={ item } viewType={ view.type } />;\n\t\t\t\t},\n\t\t\t\tminWidth: 120,\n\t\t\t\tmaxWidth: 120,\n\t\t\t\tenableSorting: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\theader: __( 'Template' ),\n\t\t\t\tid: 'title',\n\t\t\t\tgetValue: ( { item } ) => item.title?.rendered,\n\t\t\t\trender: ( { item } ) => (\n\t\t\t\t\t<Title item={ item } viewType={ view.type } />\n\t\t\t\t),\n\t\t\t\tmaxWidth: 400,\n\t\t\t\tenableHiding: false,\n\t\t\t\tenableGlobalSearch: true,\n\t\t\t},\n\t\t\t{\n\t\t\t\theader: __( 'Description' ),\n\t\t\t\tid: 'description',\n\t\t\t\trender: ( { item } ) => {\n\t\t\t\t\treturn item.description ? (\n\t\t\t\t\t\t<span className=\"page-templates-description\">\n\t\t\t\t\t\t\t{ decodeEntities( item.description ) }\n\t\t\t\t\t\t</span>\n\t\t\t\t\t) : (\n\t\t\t\t\t\tview.type === LAYOUT_TABLE && (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t<Text variant=\"muted\" aria-hidden=\"true\">\n\t\t\t\t\t\t\t\t\t—\n\t\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t\t\t<VisuallyHidden>\n\t\t\t\t\t\t\t\t\t{ __( 'No description.' ) }\n\t\t\t\t\t\t\t\t</VisuallyHidden>\n\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t)\n\t\t\t\t\t);\n\t\t\t\t},\n\t\t\t\tmaxWidth: 400,\n\t\t\t\tminWidth: 320,\n\t\t\t\tenableSorting: false,\n\t\t\t\tenableGlobalSearch: true,\n\t\t\t},\n\t\t\t{\n\t\t\t\theader: __( 'Author' ),\n\t\t\t\tid: 'author',\n\t\t\t\tgetValue: ( { item } ) => item.author_text,\n\t\t\t\trender: ( { item } ) => {\n\t\t\t\t\treturn <AuthorField viewType={ view.type } item={ item } />;\n\t\t\t\t},\n\t\t\t\telements: authors,\n\t\t\t\twidth: '1%',\n\t\t\t},\n\t\t],\n\t\t[ authors, view.type ]\n\t);\n\n\tconst { data, paginationInfo } = useMemo( () => {\n\t\treturn filterSortAndPaginate( records, view, fields );\n\t}, [ records, view, fields ] );\n\n\tconst postTypeActions = usePostActions( TEMPLATE_POST_TYPE );\n\tconst editAction = useEditPostAction();\n\tconst actions = useMemo(\n\t\t() => [ editAction, ...postTypeActions ],\n\t\t[ postTypeActions, editAction ]\n\t);\n\n\tconst onChangeView = useCallback(\n\t\t( newView ) => {\n\t\t\tif ( newView.type !== view.type ) {\n\t\t\t\tnewView = {\n\t\t\t\t\t...newView,\n\t\t\t\t\tlayout: {\n\t\t\t\t\t\t...defaultConfigPerViewType[ newView.type ],\n\t\t\t\t\t},\n\t\t\t\t};\n\n\t\t\t\thistory.push( {\n\t\t\t\t\t...params,\n\t\t\t\t\tlayout: newView.type,\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\tsetView( newView );\n\t\t},\n\t\t[ view.type, setView, history, params ]\n\t);\n\n\treturn (\n\t\t<Page\n\t\t\tclassName=\"edit-site-page-templates\"\n\t\t\ttitle={ __( 'Templates' ) }\n\t\t\tactions={ <AddNewTemplate /> }\n\t\t>\n\t\t\t<DataViews\n\t\t\t\tpaginationInfo={ paginationInfo }\n\t\t\t\tfields={ fields }\n\t\t\t\tactions={ actions }\n\t\t\t\tdata={ data }\n\t\t\t\tisLoading={ isLoadingData }\n\t\t\t\tview={ view }\n\t\t\t\tonChangeView={ onChangeView }\n\t\t\t\tonSelectionChange={ onSelectionChange }\n\t\t\t/>\n\t\t</Page>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -2,7 +2,7 @@ import { createElement } from "react";
|
|
|
2
2
|
/**
|
|
3
3
|
* External dependencies
|
|
4
4
|
*/
|
|
5
|
-
import
|
|
5
|
+
import clsx from 'clsx';
|
|
6
6
|
|
|
7
7
|
/**
|
|
8
8
|
* WordPress dependencies
|
|
@@ -25,7 +25,7 @@ export default function Pagination({
|
|
|
25
25
|
"aria-label": label,
|
|
26
26
|
spacing: 3,
|
|
27
27
|
justify: "flex-start",
|
|
28
|
-
className:
|
|
28
|
+
className: clsx('edit-site-pagination', className)
|
|
29
29
|
}, createElement(Text, {
|
|
30
30
|
variant: "muted",
|
|
31
31
|
className: "edit-site-pagination__total"
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["
|
|
1
|
+
{"version":3,"names":["clsx","__experimentalHStack","HStack","__experimentalText","Text","Button","__","_x","_n","sprintf","Pagination","currentPage","numPages","changePage","totalItems","className","disabled","buttonVariant","label","createElement","expanded","as","spacing","justify","variant","onClick"],"sources":["@wordpress/edit-site/src/components/pagination/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalHStack as HStack,\n\t__experimentalText as Text,\n\tButton,\n} from '@wordpress/components';\nimport { __, _x, _n, sprintf } from '@wordpress/i18n';\n\nexport default function Pagination( {\n\tcurrentPage,\n\tnumPages,\n\tchangePage,\n\ttotalItems,\n\tclassName,\n\tdisabled = false,\n\tbuttonVariant = 'tertiary',\n\tlabel = __( 'Pagination Navigation' ),\n} ) {\n\treturn (\n\t\t<HStack\n\t\t\texpanded={ false }\n\t\t\tas=\"nav\"\n\t\t\taria-label={ label }\n\t\t\tspacing={ 3 }\n\t\t\tjustify=\"flex-start\"\n\t\t\tclassName={ clsx( 'edit-site-pagination', className ) }\n\t\t>\n\t\t\t<Text variant=\"muted\" className=\"edit-site-pagination__total\">\n\t\t\t\t{\n\t\t\t\t\t// translators: %s: Total number of patterns.\n\t\t\t\t\tsprintf(\n\t\t\t\t\t\t// translators: %s: Total number of patterns.\n\t\t\t\t\t\t_n( '%s item', '%s items', totalItems ),\n\t\t\t\t\t\ttotalItems\n\t\t\t\t\t)\n\t\t\t\t}\n\t\t\t</Text>\n\t\t\t<HStack expanded={ false } spacing={ 1 }>\n\t\t\t\t<Button\n\t\t\t\t\tvariant={ buttonVariant }\n\t\t\t\t\tonClick={ () => changePage( 1 ) }\n\t\t\t\t\tdisabled={ disabled || currentPage === 1 }\n\t\t\t\t\taria-label={ __( 'First page' ) }\n\t\t\t\t>\n\t\t\t\t\t«\n\t\t\t\t</Button>\n\t\t\t\t<Button\n\t\t\t\t\tvariant={ buttonVariant }\n\t\t\t\t\tonClick={ () => changePage( currentPage - 1 ) }\n\t\t\t\t\tdisabled={ disabled || currentPage === 1 }\n\t\t\t\t\taria-label={ __( 'Previous page' ) }\n\t\t\t\t>\n\t\t\t\t\t‹\n\t\t\t\t</Button>\n\t\t\t</HStack>\n\t\t\t<Text variant=\"muted\">\n\t\t\t\t{ sprintf(\n\t\t\t\t\t// translators: %1$s: Current page number, %2$s: Total number of pages.\n\t\t\t\t\t_x( '%1$s of %2$s', 'paging' ),\n\t\t\t\t\tcurrentPage,\n\t\t\t\t\tnumPages\n\t\t\t\t) }\n\t\t\t</Text>\n\t\t\t<HStack expanded={ false } spacing={ 1 }>\n\t\t\t\t<Button\n\t\t\t\t\tvariant={ buttonVariant }\n\t\t\t\t\tonClick={ () => changePage( currentPage + 1 ) }\n\t\t\t\t\tdisabled={ disabled || currentPage === numPages }\n\t\t\t\t\taria-label={ __( 'Next page' ) }\n\t\t\t\t>\n\t\t\t\t\t›\n\t\t\t\t</Button>\n\t\t\t\t<Button\n\t\t\t\t\tvariant={ buttonVariant }\n\t\t\t\t\tonClick={ () => changePage( numPages ) }\n\t\t\t\t\tdisabled={ disabled || currentPage === numPages }\n\t\t\t\t\taria-label={ __( 'Last page' ) }\n\t\t\t\t>\n\t\t\t\t\t»\n\t\t\t\t</Button>\n\t\t\t</HStack>\n\t\t</HStack>\n\t);\n}\n"],"mappings":";AAAA;AACA;AACA;AACA,OAAOA,IAAI,MAAM,MAAM;;AAEvB;AACA;AACA;AACA,SACCC,oBAAoB,IAAIC,MAAM,EAC9BC,kBAAkB,IAAIC,IAAI,EAC1BC,MAAM,QACA,uBAAuB;AAC9B,SAASC,EAAE,EAAEC,EAAE,EAAEC,EAAE,EAAEC,OAAO,QAAQ,iBAAiB;AAErD,eAAe,SAASC,UAAUA,CAAE;EACnCC,WAAW;EACXC,QAAQ;EACRC,UAAU;EACVC,UAAU;EACVC,SAAS;EACTC,QAAQ,GAAG,KAAK;EAChBC,aAAa,GAAG,UAAU;EAC1BC,KAAK,GAAGZ,EAAE,CAAE,uBAAwB;AACrC,CAAC,EAAG;EACH,OACCa,aAAA,CAACjB,MAAM;IACNkB,QAAQ,EAAG,KAAO;IAClBC,EAAE,EAAC,KAAK;IACR,cAAaH,KAAO;IACpBI,OAAO,EAAG,CAAG;IACbC,OAAO,EAAC,YAAY;IACpBR,SAAS,EAAGf,IAAI,CAAE,sBAAsB,EAAEe,SAAU;EAAG,GAEvDI,aAAA,CAACf,IAAI;IAACoB,OAAO,EAAC,OAAO;IAACT,SAAS,EAAC;EAA6B;EAE3D;EACAN,OAAO;EACN;EACAD,EAAE,CAAE,SAAS,EAAE,UAAU,EAAEM,UAAW,CAAC,EACvCA,UACD,CAEI,CAAC,EACPK,aAAA,CAACjB,MAAM;IAACkB,QAAQ,EAAG,KAAO;IAACE,OAAO,EAAG;EAAG,GACvCH,aAAA,CAACd,MAAM;IACNmB,OAAO,EAAGP,aAAe;IACzBQ,OAAO,EAAGA,CAAA,KAAMZ,UAAU,CAAE,CAAE,CAAG;IACjCG,QAAQ,EAAGA,QAAQ,IAAIL,WAAW,KAAK,CAAG;IAC1C,cAAaL,EAAE,CAAE,YAAa;EAAG,GACjC,MAEO,CAAC,EACTa,aAAA,CAACd,MAAM;IACNmB,OAAO,EAAGP,aAAe;IACzBQ,OAAO,EAAGA,CAAA,KAAMZ,UAAU,CAAEF,WAAW,GAAG,CAAE,CAAG;IAC/CK,QAAQ,EAAGA,QAAQ,IAAIL,WAAW,KAAK,CAAG;IAC1C,cAAaL,EAAE,CAAE,eAAgB;EAAG,GACpC,QAEO,CACD,CAAC,EACTa,aAAA,CAACf,IAAI;IAACoB,OAAO,EAAC;EAAO,GAClBf,OAAO;EACR;EACAF,EAAE,CAAE,cAAc,EAAE,QAAS,CAAC,EAC9BI,WAAW,EACXC,QACD,CACK,CAAC,EACPO,aAAA,CAACjB,MAAM;IAACkB,QAAQ,EAAG,KAAO;IAACE,OAAO,EAAG;EAAG,GACvCH,aAAA,CAACd,MAAM;IACNmB,OAAO,EAAGP,aAAe;IACzBQ,OAAO,EAAGA,CAAA,KAAMZ,UAAU,CAAEF,WAAW,GAAG,CAAE,CAAG;IAC/CK,QAAQ,EAAGA,QAAQ,IAAIL,WAAW,KAAKC,QAAU;IACjD,cAAaN,EAAE,CAAE,WAAY;EAAG,GAChC,QAEO,CAAC,EACTa,aAAA,CAACd,MAAM;IACNmB,OAAO,EAAGP,aAAe;IACzBQ,OAAO,EAAGA,CAAA,KAAMZ,UAAU,CAAED,QAAS,CAAG;IACxCI,QAAQ,EAAGA,QAAQ,IAAIL,WAAW,KAAKC,QAAU;IACjD,cAAaN,EAAE,CAAE,WAAY;EAAG,GAChC,MAEO,CACD,CACD,CAAC;AAEX","ignoreList":[]}
|
|
@@ -2,14 +2,14 @@ import { createElement, Fragment } from "react";
|
|
|
2
2
|
/**
|
|
3
3
|
* External dependencies
|
|
4
4
|
*/
|
|
5
|
-
import
|
|
5
|
+
import clsx from 'clsx';
|
|
6
6
|
|
|
7
7
|
/**
|
|
8
8
|
* WordPress dependencies
|
|
9
9
|
*/
|
|
10
10
|
import { useState, useRef } from '@wordpress/element';
|
|
11
11
|
import { ResizableBox, Tooltip, __unstableMotion as motion } from '@wordpress/components';
|
|
12
|
-
import { useInstanceId } from '@wordpress/compose';
|
|
12
|
+
import { useInstanceId, useReducedMotion } from '@wordpress/compose';
|
|
13
13
|
import { useDispatch, useSelect } from '@wordpress/data';
|
|
14
14
|
import { __ } from '@wordpress/i18n';
|
|
15
15
|
|
|
@@ -70,6 +70,7 @@ function ResizableFrame({
|
|
|
70
70
|
defaultSize,
|
|
71
71
|
innerContentStyle
|
|
72
72
|
}) {
|
|
73
|
+
const disableMotion = useReducedMotion();
|
|
73
74
|
const [frameSize, setFrameSize] = useState(INITIAL_FRAME_SIZE);
|
|
74
75
|
// The width of the resizable frame when a new resize gesture starts.
|
|
75
76
|
const [startingWidth, setStartingWidth] = useState();
|
|
@@ -190,6 +191,13 @@ function ResizableFrame({
|
|
|
190
191
|
});
|
|
191
192
|
}
|
|
192
193
|
},
|
|
194
|
+
whileHover: canvasMode === 'view' ? {
|
|
195
|
+
scale: 1.005,
|
|
196
|
+
transition: {
|
|
197
|
+
duration: disableMotion ? 0 : 0.5,
|
|
198
|
+
ease: 'easeOut'
|
|
199
|
+
}
|
|
200
|
+
} : {},
|
|
193
201
|
transition: FRAME_TRANSITION,
|
|
194
202
|
size: frameSize,
|
|
195
203
|
enable: {
|
|
@@ -223,7 +231,7 @@ function ResizableFrame({
|
|
|
223
231
|
key: "handle",
|
|
224
232
|
role: "separator",
|
|
225
233
|
"aria-orientation": "vertical",
|
|
226
|
-
className:
|
|
234
|
+
className: clsx('edit-site-resizable-frame__handle', {
|
|
227
235
|
'is-resizing': isResizing
|
|
228
236
|
}),
|
|
229
237
|
variants: resizeHandleVariants,
|
|
@@ -246,7 +254,7 @@ function ResizableFrame({
|
|
|
246
254
|
onResizeStart: handleResizeStart,
|
|
247
255
|
onResize: handleResize,
|
|
248
256
|
onResizeStop: handleResizeStop,
|
|
249
|
-
className:
|
|
257
|
+
className: clsx('edit-site-resizable-frame__inner', {
|
|
250
258
|
'is-resizing': isResizing
|
|
251
259
|
}),
|
|
252
260
|
showHandle: false // Do not show the default handle, as we're using a custom one.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["classnames","useState","useRef","ResizableBox","Tooltip","__unstableMotion","motion","useInstanceId","useDispatch","useSelect","__","unlock","store","editSiteStore","HANDLE_STYLES_OVERRIDE","position","undefined","userSelect","cursor","width","height","top","right","bottom","left","FRAME_MIN_WIDTH","FRAME_REFERENCE_WIDTH","FRAME_TARGET_ASPECT_RATIO","SNAP_TO_EDIT_CANVAS_MODE_THRESHOLD","INITIAL_FRAME_SIZE","calculateNewHeight","initialAspectRatio","lerp","a","b","amount","lerpFactor","Math","max","min","intermediateAspectRatio","ResizableFrame","isFullWidth","isOversized","setIsOversized","isReady","children","defaultSize","innerContentStyle","frameSize","setFrameSize","startingWidth","setStartingWidth","isResizing","setIsResizing","shouldShowHandle","setShouldShowHandle","resizeRatio","setResizeRatio","canvasMode","select","getCanvasMode","setCanvasMode","FRAME_TRANSITION","type","duration","frameRef","resizableHandleHelpId","defaultAspectRatio","handleResizeStart","_event","_direction","ref","offsetWidth","handleResize","_ref","delta","normalizedDelta","deltaAbs","abs","maxDoubledDelta","deltaToDouble","doubleSegment","singleSegment","updatedWidth","handleResizeStop","remainingWidth","ownerDocument","documentElement","handleResizableHandleKeyDown","event","includes","key","preventDefault","step","shiftKey","newWidth","current","resizable","frameAnimationVariants","default","flexGrow","fullWidth","resizeHandleVariants","hidden","opacity","visible","active","scaleY","currentResizeHandleVariant","createElement","as","div","initial","variants","animate","onAnimationComplete","definition","transition","size","enable","topRight","bottomRight","bottomLeft","topLeft","handleClasses","handleStyles","minWidth","maxWidth","maxHeight","onFocus","onBlur","onMouseOver","onMouseOut","handleComponent","Fragment","text","button","role","className","onKeyDown","exit","whileFocus","whileHover","id","onResizeStart","onResize","onResizeStop","showHandle","style"],"sources":["@wordpress/edit-site/src/components/resizable-frame/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { useState, useRef } from '@wordpress/element';\nimport {\n\tResizableBox,\n\tTooltip,\n\t__unstableMotion as motion,\n} from '@wordpress/components';\nimport { useInstanceId } from '@wordpress/compose';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../lock-unlock';\nimport { store as editSiteStore } from '../../store';\n\n// Removes the inline styles in the drag handles.\nconst HANDLE_STYLES_OVERRIDE = {\n\tposition: undefined,\n\tuserSelect: undefined,\n\tcursor: undefined,\n\twidth: undefined,\n\theight: undefined,\n\ttop: undefined,\n\tright: undefined,\n\tbottom: undefined,\n\tleft: undefined,\n};\n\n// The minimum width of the frame (in px) while resizing.\nconst FRAME_MIN_WIDTH = 320;\n// The reference width of the frame (in px) used to calculate the aspect ratio.\nconst FRAME_REFERENCE_WIDTH = 1300;\n// 9 : 19.5 is the target aspect ratio enforced (when possible) while resizing.\nconst FRAME_TARGET_ASPECT_RATIO = 9 / 19.5;\n// The minimum distance (in px) between the frame resize handle and the\n// viewport's edge. If the frame is resized to be closer to the viewport's edge\n// than this distance, then \"canvas mode\" will be enabled.\nconst SNAP_TO_EDIT_CANVAS_MODE_THRESHOLD = 200;\n// Default size for the `frameSize` state.\nconst INITIAL_FRAME_SIZE = { width: '100%', height: '100%' };\n\nfunction calculateNewHeight( width, initialAspectRatio ) {\n\tconst lerp = ( a, b, amount ) => {\n\t\treturn a + ( b - a ) * amount;\n\t};\n\n\t// Calculate the intermediate aspect ratio based on the current width.\n\tconst lerpFactor =\n\t\t1 -\n\t\tMath.max(\n\t\t\t0,\n\t\t\tMath.min(\n\t\t\t\t1,\n\t\t\t\t( width - FRAME_MIN_WIDTH ) /\n\t\t\t\t\t( FRAME_REFERENCE_WIDTH - FRAME_MIN_WIDTH )\n\t\t\t)\n\t\t);\n\n\t// Calculate the height based on the intermediate aspect ratio\n\t// ensuring the frame arrives at the target aspect ratio.\n\tconst intermediateAspectRatio = lerp(\n\t\tinitialAspectRatio,\n\t\tFRAME_TARGET_ASPECT_RATIO,\n\t\tlerpFactor\n\t);\n\n\treturn width / intermediateAspectRatio;\n}\n\nfunction ResizableFrame( {\n\tisFullWidth,\n\tisOversized,\n\tsetIsOversized,\n\tisReady,\n\tchildren,\n\t/** The default (unresized) width/height of the frame, based on the space availalbe in the viewport. */\n\tdefaultSize,\n\tinnerContentStyle,\n} ) {\n\tconst [ frameSize, setFrameSize ] = useState( INITIAL_FRAME_SIZE );\n\t// The width of the resizable frame when a new resize gesture starts.\n\tconst [ startingWidth, setStartingWidth ] = useState();\n\tconst [ isResizing, setIsResizing ] = useState( false );\n\tconst [ shouldShowHandle, setShouldShowHandle ] = useState( false );\n\tconst [ resizeRatio, setResizeRatio ] = useState( 1 );\n\tconst canvasMode = useSelect(\n\t\t( select ) => unlock( select( editSiteStore ) ).getCanvasMode(),\n\t\t[]\n\t);\n\tconst { setCanvasMode } = unlock( useDispatch( editSiteStore ) );\n\tconst FRAME_TRANSITION = { type: 'tween', duration: isResizing ? 0 : 0.5 };\n\tconst frameRef = useRef( null );\n\tconst resizableHandleHelpId = useInstanceId(\n\t\tResizableFrame,\n\t\t'edit-site-resizable-frame-handle-help'\n\t);\n\tconst defaultAspectRatio = defaultSize.width / defaultSize.height;\n\n\tconst handleResizeStart = ( _event, _direction, ref ) => {\n\t\t// Remember the starting width so we don't have to get `ref.offsetWidth` on\n\t\t// every resize event thereafter, which will cause layout thrashing.\n\t\tsetStartingWidth( ref.offsetWidth );\n\t\tsetIsResizing( true );\n\t};\n\n\t// Calculate the frame size based on the window width as its resized.\n\tconst handleResize = ( _event, _direction, _ref, delta ) => {\n\t\tconst normalizedDelta = delta.width / resizeRatio;\n\t\tconst deltaAbs = Math.abs( normalizedDelta );\n\t\tconst maxDoubledDelta =\n\t\t\tdelta.width < 0 // is shrinking\n\t\t\t\t? deltaAbs\n\t\t\t\t: ( defaultSize.width - startingWidth ) / 2;\n\t\tconst deltaToDouble = Math.min( deltaAbs, maxDoubledDelta );\n\t\tconst doubleSegment = deltaAbs === 0 ? 0 : deltaToDouble / deltaAbs;\n\t\tconst singleSegment = 1 - doubleSegment;\n\n\t\tsetResizeRatio( singleSegment + doubleSegment * 2 );\n\n\t\tconst updatedWidth = startingWidth + delta.width;\n\n\t\tsetIsOversized( updatedWidth > defaultSize.width );\n\n\t\t// Width will be controlled by the library (via `resizeRatio`),\n\t\t// so we only need to update the height.\n\t\tsetFrameSize( {\n\t\t\theight: isOversized\n\t\t\t\t? '100%'\n\t\t\t\t: calculateNewHeight( updatedWidth, defaultAspectRatio ),\n\t\t} );\n\t};\n\n\tconst handleResizeStop = ( _event, _direction, ref ) => {\n\t\tsetIsResizing( false );\n\n\t\tif ( ! isOversized ) {\n\t\t\treturn;\n\t\t}\n\n\t\tsetIsOversized( false );\n\n\t\tconst remainingWidth =\n\t\t\tref.ownerDocument.documentElement.offsetWidth - ref.offsetWidth;\n\n\t\tif ( remainingWidth > SNAP_TO_EDIT_CANVAS_MODE_THRESHOLD ) {\n\t\t\t// Reset the initial aspect ratio if the frame is resized slightly\n\t\t\t// above the sidebar but not far enough to trigger full screen.\n\t\t\tsetFrameSize( INITIAL_FRAME_SIZE );\n\t\t} else {\n\t\t\t// Trigger full screen if the frame is resized far enough to the left.\n\t\t\tsetCanvasMode( 'edit' );\n\t\t}\n\t};\n\n\t// Handle resize by arrow keys\n\tconst handleResizableHandleKeyDown = ( event ) => {\n\t\tif ( ! [ 'ArrowLeft', 'ArrowRight' ].includes( event.key ) ) {\n\t\t\treturn;\n\t\t}\n\n\t\tevent.preventDefault();\n\n\t\tconst step = 20 * ( event.shiftKey ? 5 : 1 );\n\t\tconst delta = step * ( event.key === 'ArrowLeft' ? 1 : -1 );\n\t\tconst newWidth = Math.min(\n\t\t\tMath.max(\n\t\t\t\tFRAME_MIN_WIDTH,\n\t\t\t\tframeRef.current.resizable.offsetWidth + delta\n\t\t\t),\n\t\t\tdefaultSize.width\n\t\t);\n\n\t\tsetFrameSize( {\n\t\t\twidth: newWidth,\n\t\t\theight: calculateNewHeight( newWidth, defaultAspectRatio ),\n\t\t} );\n\t};\n\n\tconst frameAnimationVariants = {\n\t\tdefault: {\n\t\t\tflexGrow: 0,\n\t\t\theight: frameSize.height,\n\t\t},\n\t\tfullWidth: {\n\t\t\tflexGrow: 1,\n\t\t\theight: frameSize.height,\n\t\t},\n\t};\n\n\tconst resizeHandleVariants = {\n\t\thidden: {\n\t\t\topacity: 0,\n\t\t\tleft: 0,\n\t\t},\n\t\tvisible: {\n\t\t\topacity: 1,\n\t\t\tleft: -14, // Account for the handle's width.\n\t\t},\n\t\tactive: {\n\t\t\topacity: 1,\n\t\t\tleft: -14, // Account for the handle's width.\n\t\t\tscaleY: 1.3,\n\t\t},\n\t};\n\tconst currentResizeHandleVariant = ( () => {\n\t\tif ( isResizing ) {\n\t\t\treturn 'active';\n\t\t}\n\t\treturn shouldShowHandle ? 'visible' : 'hidden';\n\t} )();\n\n\treturn (\n\t\t<ResizableBox\n\t\t\tas={ motion.div }\n\t\t\tref={ frameRef }\n\t\t\tinitial={ false }\n\t\t\tvariants={ frameAnimationVariants }\n\t\t\tanimate={ isFullWidth ? 'fullWidth' : 'default' }\n\t\t\tonAnimationComplete={ ( definition ) => {\n\t\t\t\tif ( definition === 'fullWidth' ) {\n\t\t\t\t\tsetFrameSize( { width: '100%', height: '100%' } );\n\t\t\t\t}\n\t\t\t} }\n\t\t\ttransition={ FRAME_TRANSITION }\n\t\t\tsize={ frameSize }\n\t\t\tenable={ {\n\t\t\t\ttop: false,\n\t\t\t\tright: false,\n\t\t\t\tbottom: false,\n\t\t\t\t// Resizing will be disabled until the editor content is loaded.\n\t\t\t\tleft: isReady,\n\t\t\t\ttopRight: false,\n\t\t\t\tbottomRight: false,\n\t\t\t\tbottomLeft: false,\n\t\t\t\ttopLeft: false,\n\t\t\t} }\n\t\t\tresizeRatio={ resizeRatio }\n\t\t\thandleClasses={ undefined }\n\t\t\thandleStyles={ {\n\t\t\t\tleft: HANDLE_STYLES_OVERRIDE,\n\t\t\t\tright: HANDLE_STYLES_OVERRIDE,\n\t\t\t} }\n\t\t\tminWidth={ FRAME_MIN_WIDTH }\n\t\t\tmaxWidth={ isFullWidth ? '100%' : '150%' }\n\t\t\tmaxHeight={ '100%' }\n\t\t\tonFocus={ () => setShouldShowHandle( true ) }\n\t\t\tonBlur={ () => setShouldShowHandle( false ) }\n\t\t\tonMouseOver={ () => setShouldShowHandle( true ) }\n\t\t\tonMouseOut={ () => setShouldShowHandle( false ) }\n\t\t\thandleComponent={ {\n\t\t\t\tleft: canvasMode === 'view' && (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<Tooltip text={ __( 'Drag to resize' ) }>\n\t\t\t\t\t\t\t{ /* Disable reason: role=\"separator\" does in fact support aria-valuenow */ }\n\t\t\t\t\t\t\t{ /* eslint-disable-next-line jsx-a11y/role-supports-aria-props */ }\n\t\t\t\t\t\t\t<motion.button\n\t\t\t\t\t\t\t\tkey=\"handle\"\n\t\t\t\t\t\t\t\trole=\"separator\"\n\t\t\t\t\t\t\t\taria-orientation=\"vertical\"\n\t\t\t\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\t\t\t\t'edit-site-resizable-frame__handle',\n\t\t\t\t\t\t\t\t\t{ 'is-resizing': isResizing }\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\tvariants={ resizeHandleVariants }\n\t\t\t\t\t\t\t\tanimate={ currentResizeHandleVariant }\n\t\t\t\t\t\t\t\taria-label={ __( 'Drag to resize' ) }\n\t\t\t\t\t\t\t\taria-describedby={ resizableHandleHelpId }\n\t\t\t\t\t\t\t\taria-valuenow={\n\t\t\t\t\t\t\t\t\tframeRef.current?.resizable?.offsetWidth ||\n\t\t\t\t\t\t\t\t\tundefined\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\taria-valuemin={ FRAME_MIN_WIDTH }\n\t\t\t\t\t\t\t\taria-valuemax={ defaultSize.width }\n\t\t\t\t\t\t\t\tonKeyDown={ handleResizableHandleKeyDown }\n\t\t\t\t\t\t\t\tinitial=\"hidden\"\n\t\t\t\t\t\t\t\texit=\"hidden\"\n\t\t\t\t\t\t\t\twhileFocus=\"active\"\n\t\t\t\t\t\t\t\twhileHover=\"active\"\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</Tooltip>\n\t\t\t\t\t\t<div hidden id={ resizableHandleHelpId }>\n\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t'Use left and right arrow keys to resize the canvas. Hold shift to resize in larger increments.'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</>\n\t\t\t\t),\n\t\t\t} }\n\t\t\tonResizeStart={ handleResizeStart }\n\t\t\tonResize={ handleResize }\n\t\t\tonResizeStop={ handleResizeStop }\n\t\t\tclassName={ classnames( 'edit-site-resizable-frame__inner', {\n\t\t\t\t'is-resizing': isResizing,\n\t\t\t} ) }\n\t\t\tshowHandle={ false } // Do not show the default handle, as we're using a custom one.\n\t\t>\n\t\t\t<div\n\t\t\t\tclassName=\"edit-site-resizable-frame__inner-content\"\n\t\t\t\tstyle={ innerContentStyle }\n\t\t\t>\n\t\t\t\t{ children }\n\t\t\t</div>\n\t\t</ResizableBox>\n\t);\n}\n\nexport default ResizableFrame;\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["clsx","useState","useRef","ResizableBox","Tooltip","__unstableMotion","motion","useInstanceId","useReducedMotion","useDispatch","useSelect","__","unlock","store","editSiteStore","HANDLE_STYLES_OVERRIDE","position","undefined","userSelect","cursor","width","height","top","right","bottom","left","FRAME_MIN_WIDTH","FRAME_REFERENCE_WIDTH","FRAME_TARGET_ASPECT_RATIO","SNAP_TO_EDIT_CANVAS_MODE_THRESHOLD","INITIAL_FRAME_SIZE","calculateNewHeight","initialAspectRatio","lerp","a","b","amount","lerpFactor","Math","max","min","intermediateAspectRatio","ResizableFrame","isFullWidth","isOversized","setIsOversized","isReady","children","defaultSize","innerContentStyle","disableMotion","frameSize","setFrameSize","startingWidth","setStartingWidth","isResizing","setIsResizing","shouldShowHandle","setShouldShowHandle","resizeRatio","setResizeRatio","canvasMode","select","getCanvasMode","setCanvasMode","FRAME_TRANSITION","type","duration","frameRef","resizableHandleHelpId","defaultAspectRatio","handleResizeStart","_event","_direction","ref","offsetWidth","handleResize","_ref","delta","normalizedDelta","deltaAbs","abs","maxDoubledDelta","deltaToDouble","doubleSegment","singleSegment","updatedWidth","handleResizeStop","remainingWidth","ownerDocument","documentElement","handleResizableHandleKeyDown","event","includes","key","preventDefault","step","shiftKey","newWidth","current","resizable","frameAnimationVariants","default","flexGrow","fullWidth","resizeHandleVariants","hidden","opacity","visible","active","scaleY","currentResizeHandleVariant","createElement","as","div","initial","variants","animate","onAnimationComplete","definition","whileHover","scale","transition","ease","size","enable","topRight","bottomRight","bottomLeft","topLeft","handleClasses","handleStyles","minWidth","maxWidth","maxHeight","onFocus","onBlur","onMouseOver","onMouseOut","handleComponent","Fragment","text","button","role","className","onKeyDown","exit","whileFocus","id","onResizeStart","onResize","onResizeStop","showHandle","style"],"sources":["@wordpress/edit-site/src/components/resizable-frame/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { useState, useRef } from '@wordpress/element';\nimport {\n\tResizableBox,\n\tTooltip,\n\t__unstableMotion as motion,\n} from '@wordpress/components';\nimport { useInstanceId, useReducedMotion } from '@wordpress/compose';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../lock-unlock';\nimport { store as editSiteStore } from '../../store';\n\n// Removes the inline styles in the drag handles.\nconst HANDLE_STYLES_OVERRIDE = {\n\tposition: undefined,\n\tuserSelect: undefined,\n\tcursor: undefined,\n\twidth: undefined,\n\theight: undefined,\n\ttop: undefined,\n\tright: undefined,\n\tbottom: undefined,\n\tleft: undefined,\n};\n\n// The minimum width of the frame (in px) while resizing.\nconst FRAME_MIN_WIDTH = 320;\n// The reference width of the frame (in px) used to calculate the aspect ratio.\nconst FRAME_REFERENCE_WIDTH = 1300;\n// 9 : 19.5 is the target aspect ratio enforced (when possible) while resizing.\nconst FRAME_TARGET_ASPECT_RATIO = 9 / 19.5;\n// The minimum distance (in px) between the frame resize handle and the\n// viewport's edge. If the frame is resized to be closer to the viewport's edge\n// than this distance, then \"canvas mode\" will be enabled.\nconst SNAP_TO_EDIT_CANVAS_MODE_THRESHOLD = 200;\n// Default size for the `frameSize` state.\nconst INITIAL_FRAME_SIZE = { width: '100%', height: '100%' };\n\nfunction calculateNewHeight( width, initialAspectRatio ) {\n\tconst lerp = ( a, b, amount ) => {\n\t\treturn a + ( b - a ) * amount;\n\t};\n\n\t// Calculate the intermediate aspect ratio based on the current width.\n\tconst lerpFactor =\n\t\t1 -\n\t\tMath.max(\n\t\t\t0,\n\t\t\tMath.min(\n\t\t\t\t1,\n\t\t\t\t( width - FRAME_MIN_WIDTH ) /\n\t\t\t\t\t( FRAME_REFERENCE_WIDTH - FRAME_MIN_WIDTH )\n\t\t\t)\n\t\t);\n\n\t// Calculate the height based on the intermediate aspect ratio\n\t// ensuring the frame arrives at the target aspect ratio.\n\tconst intermediateAspectRatio = lerp(\n\t\tinitialAspectRatio,\n\t\tFRAME_TARGET_ASPECT_RATIO,\n\t\tlerpFactor\n\t);\n\n\treturn width / intermediateAspectRatio;\n}\n\nfunction ResizableFrame( {\n\tisFullWidth,\n\tisOversized,\n\tsetIsOversized,\n\tisReady,\n\tchildren,\n\t/** The default (unresized) width/height of the frame, based on the space availalbe in the viewport. */\n\tdefaultSize,\n\tinnerContentStyle,\n} ) {\n\tconst disableMotion = useReducedMotion();\n\tconst [ frameSize, setFrameSize ] = useState( INITIAL_FRAME_SIZE );\n\t// The width of the resizable frame when a new resize gesture starts.\n\tconst [ startingWidth, setStartingWidth ] = useState();\n\tconst [ isResizing, setIsResizing ] = useState( false );\n\tconst [ shouldShowHandle, setShouldShowHandle ] = useState( false );\n\tconst [ resizeRatio, setResizeRatio ] = useState( 1 );\n\tconst canvasMode = useSelect(\n\t\t( select ) => unlock( select( editSiteStore ) ).getCanvasMode(),\n\t\t[]\n\t);\n\tconst { setCanvasMode } = unlock( useDispatch( editSiteStore ) );\n\tconst FRAME_TRANSITION = { type: 'tween', duration: isResizing ? 0 : 0.5 };\n\tconst frameRef = useRef( null );\n\tconst resizableHandleHelpId = useInstanceId(\n\t\tResizableFrame,\n\t\t'edit-site-resizable-frame-handle-help'\n\t);\n\tconst defaultAspectRatio = defaultSize.width / defaultSize.height;\n\n\tconst handleResizeStart = ( _event, _direction, ref ) => {\n\t\t// Remember the starting width so we don't have to get `ref.offsetWidth` on\n\t\t// every resize event thereafter, which will cause layout thrashing.\n\t\tsetStartingWidth( ref.offsetWidth );\n\t\tsetIsResizing( true );\n\t};\n\n\t// Calculate the frame size based on the window width as its resized.\n\tconst handleResize = ( _event, _direction, _ref, delta ) => {\n\t\tconst normalizedDelta = delta.width / resizeRatio;\n\t\tconst deltaAbs = Math.abs( normalizedDelta );\n\t\tconst maxDoubledDelta =\n\t\t\tdelta.width < 0 // is shrinking\n\t\t\t\t? deltaAbs\n\t\t\t\t: ( defaultSize.width - startingWidth ) / 2;\n\t\tconst deltaToDouble = Math.min( deltaAbs, maxDoubledDelta );\n\t\tconst doubleSegment = deltaAbs === 0 ? 0 : deltaToDouble / deltaAbs;\n\t\tconst singleSegment = 1 - doubleSegment;\n\n\t\tsetResizeRatio( singleSegment + doubleSegment * 2 );\n\n\t\tconst updatedWidth = startingWidth + delta.width;\n\n\t\tsetIsOversized( updatedWidth > defaultSize.width );\n\n\t\t// Width will be controlled by the library (via `resizeRatio`),\n\t\t// so we only need to update the height.\n\t\tsetFrameSize( {\n\t\t\theight: isOversized\n\t\t\t\t? '100%'\n\t\t\t\t: calculateNewHeight( updatedWidth, defaultAspectRatio ),\n\t\t} );\n\t};\n\n\tconst handleResizeStop = ( _event, _direction, ref ) => {\n\t\tsetIsResizing( false );\n\n\t\tif ( ! isOversized ) {\n\t\t\treturn;\n\t\t}\n\n\t\tsetIsOversized( false );\n\n\t\tconst remainingWidth =\n\t\t\tref.ownerDocument.documentElement.offsetWidth - ref.offsetWidth;\n\n\t\tif ( remainingWidth > SNAP_TO_EDIT_CANVAS_MODE_THRESHOLD ) {\n\t\t\t// Reset the initial aspect ratio if the frame is resized slightly\n\t\t\t// above the sidebar but not far enough to trigger full screen.\n\t\t\tsetFrameSize( INITIAL_FRAME_SIZE );\n\t\t} else {\n\t\t\t// Trigger full screen if the frame is resized far enough to the left.\n\t\t\tsetCanvasMode( 'edit' );\n\t\t}\n\t};\n\n\t// Handle resize by arrow keys\n\tconst handleResizableHandleKeyDown = ( event ) => {\n\t\tif ( ! [ 'ArrowLeft', 'ArrowRight' ].includes( event.key ) ) {\n\t\t\treturn;\n\t\t}\n\n\t\tevent.preventDefault();\n\n\t\tconst step = 20 * ( event.shiftKey ? 5 : 1 );\n\t\tconst delta = step * ( event.key === 'ArrowLeft' ? 1 : -1 );\n\t\tconst newWidth = Math.min(\n\t\t\tMath.max(\n\t\t\t\tFRAME_MIN_WIDTH,\n\t\t\t\tframeRef.current.resizable.offsetWidth + delta\n\t\t\t),\n\t\t\tdefaultSize.width\n\t\t);\n\n\t\tsetFrameSize( {\n\t\t\twidth: newWidth,\n\t\t\theight: calculateNewHeight( newWidth, defaultAspectRatio ),\n\t\t} );\n\t};\n\n\tconst frameAnimationVariants = {\n\t\tdefault: {\n\t\t\tflexGrow: 0,\n\t\t\theight: frameSize.height,\n\t\t},\n\t\tfullWidth: {\n\t\t\tflexGrow: 1,\n\t\t\theight: frameSize.height,\n\t\t},\n\t};\n\n\tconst resizeHandleVariants = {\n\t\thidden: {\n\t\t\topacity: 0,\n\t\t\tleft: 0,\n\t\t},\n\t\tvisible: {\n\t\t\topacity: 1,\n\t\t\tleft: -14, // Account for the handle's width.\n\t\t},\n\t\tactive: {\n\t\t\topacity: 1,\n\t\t\tleft: -14, // Account for the handle's width.\n\t\t\tscaleY: 1.3,\n\t\t},\n\t};\n\tconst currentResizeHandleVariant = ( () => {\n\t\tif ( isResizing ) {\n\t\t\treturn 'active';\n\t\t}\n\t\treturn shouldShowHandle ? 'visible' : 'hidden';\n\t} )();\n\n\treturn (\n\t\t<ResizableBox\n\t\t\tas={ motion.div }\n\t\t\tref={ frameRef }\n\t\t\tinitial={ false }\n\t\t\tvariants={ frameAnimationVariants }\n\t\t\tanimate={ isFullWidth ? 'fullWidth' : 'default' }\n\t\t\tonAnimationComplete={ ( definition ) => {\n\t\t\t\tif ( definition === 'fullWidth' ) {\n\t\t\t\t\tsetFrameSize( { width: '100%', height: '100%' } );\n\t\t\t\t}\n\t\t\t} }\n\t\t\twhileHover={\n\t\t\t\tcanvasMode === 'view'\n\t\t\t\t\t? {\n\t\t\t\t\t\t\tscale: 1.005,\n\t\t\t\t\t\t\ttransition: {\n\t\t\t\t\t\t\t\tduration: disableMotion ? 0 : 0.5,\n\t\t\t\t\t\t\t\tease: 'easeOut',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t }\n\t\t\t\t\t: {}\n\t\t\t}\n\t\t\ttransition={ FRAME_TRANSITION }\n\t\t\tsize={ frameSize }\n\t\t\tenable={ {\n\t\t\t\ttop: false,\n\t\t\t\tright: false,\n\t\t\t\tbottom: false,\n\t\t\t\t// Resizing will be disabled until the editor content is loaded.\n\t\t\t\tleft: isReady,\n\t\t\t\ttopRight: false,\n\t\t\t\tbottomRight: false,\n\t\t\t\tbottomLeft: false,\n\t\t\t\ttopLeft: false,\n\t\t\t} }\n\t\t\tresizeRatio={ resizeRatio }\n\t\t\thandleClasses={ undefined }\n\t\t\thandleStyles={ {\n\t\t\t\tleft: HANDLE_STYLES_OVERRIDE,\n\t\t\t\tright: HANDLE_STYLES_OVERRIDE,\n\t\t\t} }\n\t\t\tminWidth={ FRAME_MIN_WIDTH }\n\t\t\tmaxWidth={ isFullWidth ? '100%' : '150%' }\n\t\t\tmaxHeight={ '100%' }\n\t\t\tonFocus={ () => setShouldShowHandle( true ) }\n\t\t\tonBlur={ () => setShouldShowHandle( false ) }\n\t\t\tonMouseOver={ () => setShouldShowHandle( true ) }\n\t\t\tonMouseOut={ () => setShouldShowHandle( false ) }\n\t\t\thandleComponent={ {\n\t\t\t\tleft: canvasMode === 'view' && (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<Tooltip text={ __( 'Drag to resize' ) }>\n\t\t\t\t\t\t\t{ /* Disable reason: role=\"separator\" does in fact support aria-valuenow */ }\n\t\t\t\t\t\t\t{ /* eslint-disable-next-line jsx-a11y/role-supports-aria-props */ }\n\t\t\t\t\t\t\t<motion.button\n\t\t\t\t\t\t\t\tkey=\"handle\"\n\t\t\t\t\t\t\t\trole=\"separator\"\n\t\t\t\t\t\t\t\taria-orientation=\"vertical\"\n\t\t\t\t\t\t\t\tclassName={ clsx(\n\t\t\t\t\t\t\t\t\t'edit-site-resizable-frame__handle',\n\t\t\t\t\t\t\t\t\t{ 'is-resizing': isResizing }\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\tvariants={ resizeHandleVariants }\n\t\t\t\t\t\t\t\tanimate={ currentResizeHandleVariant }\n\t\t\t\t\t\t\t\taria-label={ __( 'Drag to resize' ) }\n\t\t\t\t\t\t\t\taria-describedby={ resizableHandleHelpId }\n\t\t\t\t\t\t\t\taria-valuenow={\n\t\t\t\t\t\t\t\t\tframeRef.current?.resizable?.offsetWidth ||\n\t\t\t\t\t\t\t\t\tundefined\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\taria-valuemin={ FRAME_MIN_WIDTH }\n\t\t\t\t\t\t\t\taria-valuemax={ defaultSize.width }\n\t\t\t\t\t\t\t\tonKeyDown={ handleResizableHandleKeyDown }\n\t\t\t\t\t\t\t\tinitial=\"hidden\"\n\t\t\t\t\t\t\t\texit=\"hidden\"\n\t\t\t\t\t\t\t\twhileFocus=\"active\"\n\t\t\t\t\t\t\t\twhileHover=\"active\"\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</Tooltip>\n\t\t\t\t\t\t<div hidden id={ resizableHandleHelpId }>\n\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t'Use left and right arrow keys to resize the canvas. Hold shift to resize in larger increments.'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</>\n\t\t\t\t),\n\t\t\t} }\n\t\t\tonResizeStart={ handleResizeStart }\n\t\t\tonResize={ handleResize }\n\t\t\tonResizeStop={ handleResizeStop }\n\t\t\tclassName={ clsx( 'edit-site-resizable-frame__inner', {\n\t\t\t\t'is-resizing': isResizing,\n\t\t\t} ) }\n\t\t\tshowHandle={ false } // Do not show the default handle, as we're using a custom one.\n\t\t>\n\t\t\t<div\n\t\t\t\tclassName=\"edit-site-resizable-frame__inner-content\"\n\t\t\t\tstyle={ innerContentStyle }\n\t\t\t>\n\t\t\t\t{ children }\n\t\t\t</div>\n\t\t</ResizableBox>\n\t);\n}\n\nexport default ResizableFrame;\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -5,6 +5,7 @@ import { createElement } from "react";
|
|
|
5
5
|
import { Disabled } from '@wordpress/components';
|
|
6
6
|
import { __ } from '@wordpress/i18n';
|
|
7
7
|
import { BlockList, privateApis as blockEditorPrivateApis, store as blockEditorStore, __unstableEditorStyles as EditorStyles, __unstableIframe as Iframe } from '@wordpress/block-editor';
|
|
8
|
+
import { privateApis as editorPrivateApis } from '@wordpress/editor';
|
|
8
9
|
import { useSelect } from '@wordpress/data';
|
|
9
10
|
import { useContext, useMemo } from '@wordpress/element';
|
|
10
11
|
|
|
@@ -13,13 +14,15 @@ import { useContext, useMemo } from '@wordpress/element';
|
|
|
13
14
|
*/
|
|
14
15
|
|
|
15
16
|
import { unlock } from '../../lock-unlock';
|
|
16
|
-
import { mergeBaseAndUserConfigs } from '../global-styles/global-styles-provider';
|
|
17
17
|
import EditorCanvasContainer from '../editor-canvas-container';
|
|
18
18
|
const {
|
|
19
19
|
ExperimentalBlockEditorProvider,
|
|
20
20
|
GlobalStylesContext,
|
|
21
21
|
useGlobalStylesOutputWithConfig
|
|
22
22
|
} = unlock(blockEditorPrivateApis);
|
|
23
|
+
const {
|
|
24
|
+
mergeBaseAndUserConfigs
|
|
25
|
+
} = unlock(editorPrivateApis);
|
|
23
26
|
function isObjectEmpty(object) {
|
|
24
27
|
return !object || Object.keys(object).length === 0;
|
|
25
28
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Disabled","__","BlockList","privateApis","blockEditorPrivateApis","store","blockEditorStore","__unstableEditorStyles","EditorStyles","__unstableIframe","Iframe","useSelect","useContext","useMemo","unlock","
|
|
1
|
+
{"version":3,"names":["Disabled","__","BlockList","privateApis","blockEditorPrivateApis","store","blockEditorStore","__unstableEditorStyles","EditorStyles","__unstableIframe","Iframe","editorPrivateApis","useSelect","useContext","useMemo","unlock","EditorCanvasContainer","ExperimentalBlockEditorProvider","GlobalStylesContext","useGlobalStylesOutputWithConfig","mergeBaseAndUserConfigs","isObjectEmpty","object","Object","keys","length","Revisions","userConfig","blocks","base","baseConfig","mergedConfig","renderedBlocksArray","Array","isArray","originalSettings","select","getSettings","settings","__unstableIsPreviewMode","globalStyles","editorStyles","styles","createElement","title","closeButtonLabel","enableResizing","className","name","tabIndex","value","renderAppender"],"sources":["@wordpress/edit-site/src/components/revisions/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { Disabled } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport {\n\tBlockList,\n\tprivateApis as blockEditorPrivateApis,\n\tstore as blockEditorStore,\n\t__unstableEditorStyles as EditorStyles,\n\t__unstableIframe as Iframe,\n} from '@wordpress/block-editor';\nimport { privateApis as editorPrivateApis } from '@wordpress/editor';\nimport { useSelect } from '@wordpress/data';\nimport { useContext, useMemo } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\n\nimport { unlock } from '../../lock-unlock';\nimport EditorCanvasContainer from '../editor-canvas-container';\n\nconst {\n\tExperimentalBlockEditorProvider,\n\tGlobalStylesContext,\n\tuseGlobalStylesOutputWithConfig,\n} = unlock( blockEditorPrivateApis );\nconst { mergeBaseAndUserConfigs } = unlock( editorPrivateApis );\n\nfunction isObjectEmpty( object ) {\n\treturn ! object || Object.keys( object ).length === 0;\n}\n\nfunction Revisions( { userConfig, blocks } ) {\n\tconst { base: baseConfig } = useContext( GlobalStylesContext );\n\n\tconst mergedConfig = useMemo( () => {\n\t\tif ( ! isObjectEmpty( userConfig ) && ! isObjectEmpty( baseConfig ) ) {\n\t\t\treturn mergeBaseAndUserConfigs( baseConfig, userConfig );\n\t\t}\n\t\treturn {};\n\t}, [ baseConfig, userConfig ] );\n\n\tconst renderedBlocksArray = useMemo(\n\t\t() => ( Array.isArray( blocks ) ? blocks : [ blocks ] ),\n\t\t[ blocks ]\n\t);\n\n\tconst originalSettings = useSelect(\n\t\t( select ) => select( blockEditorStore ).getSettings(),\n\t\t[]\n\t);\n\tconst settings = useMemo(\n\t\t() => ( { ...originalSettings, __unstableIsPreviewMode: true } ),\n\t\t[ originalSettings ]\n\t);\n\n\tconst [ globalStyles ] = useGlobalStylesOutputWithConfig( mergedConfig );\n\n\tconst editorStyles =\n\t\t! isObjectEmpty( globalStyles ) && ! isObjectEmpty( userConfig )\n\t\t\t? globalStyles\n\t\t\t: settings.styles;\n\n\treturn (\n\t\t<EditorCanvasContainer\n\t\t\ttitle={ __( 'Revisions' ) }\n\t\t\tcloseButtonLabel={ __( 'Close revisions' ) }\n\t\t\tenableResizing\n\t\t>\n\t\t\t<Iframe\n\t\t\t\tclassName=\"edit-site-revisions__iframe\"\n\t\t\t\tname=\"revisions\"\n\t\t\t\ttabIndex={ 0 }\n\t\t\t>\n\t\t\t\t<EditorStyles styles={ editorStyles } />\n\t\t\t\t<style>\n\t\t\t\t\t{\n\t\t\t\t\t\t// Forming a \"block formatting context\" to prevent margin collapsing.\n\t\t\t\t\t\t// @see https://developer.mozilla.org/en-US/docs/Web/Guide/CSS/Block_formatting_context\n\t\t\t\t\t\t`.is-root-container { display: flow-root; }`\n\t\t\t\t\t}\n\t\t\t\t</style>\n\t\t\t\t<Disabled className=\"edit-site-revisions__example-preview__content\">\n\t\t\t\t\t<ExperimentalBlockEditorProvider\n\t\t\t\t\t\tvalue={ renderedBlocksArray }\n\t\t\t\t\t\tsettings={ settings }\n\t\t\t\t\t>\n\t\t\t\t\t\t<BlockList renderAppender={ false } />\n\t\t\t\t\t</ExperimentalBlockEditorProvider>\n\t\t\t\t</Disabled>\n\t\t\t</Iframe>\n\t\t</EditorCanvasContainer>\n\t);\n}\n\nexport default Revisions;\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -2,7 +2,7 @@ import { createElement } from "react";
|
|
|
2
2
|
/**
|
|
3
3
|
* External dependencies
|
|
4
4
|
*/
|
|
5
|
-
import
|
|
5
|
+
import clsx from 'clsx';
|
|
6
6
|
|
|
7
7
|
/**
|
|
8
8
|
* WordPress dependencies
|
|
@@ -113,17 +113,17 @@ export default function SavePanel() {
|
|
|
113
113
|
const activateSaveEnabled = isPreviewingTheme() || isDirty;
|
|
114
114
|
const disabled = isSaving || !activateSaveEnabled;
|
|
115
115
|
return createElement(NavigableRegion, {
|
|
116
|
-
className:
|
|
116
|
+
className: clsx('edit-site-layout__actions', {
|
|
117
117
|
'is-entity-save-view-open': isSaveViewOpen
|
|
118
118
|
}),
|
|
119
119
|
ariaLabel: __('Save panel')
|
|
120
120
|
}, createElement("div", {
|
|
121
|
-
className:
|
|
121
|
+
className: clsx('edit-site-editor__toggle-save-panel', {
|
|
122
122
|
'screen-reader-text': isSaveViewOpen
|
|
123
123
|
})
|
|
124
124
|
}, createElement(Button, {
|
|
125
125
|
variant: "secondary",
|
|
126
|
-
className:
|
|
126
|
+
className: clsx('edit-site-editor__toggle-save-panel-button'),
|
|
127
127
|
onClick: () => setIsSaveViewOpened(true),
|
|
128
128
|
"aria-haspopup": 'dialog',
|
|
129
129
|
disabled: disabled,
|