@wordpress/edit-site 5.18.1-next.5a1d1283.0 → 5.19.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +2 -0
- package/build/components/add-new-pattern/index.js +65 -4
- package/build/components/add-new-pattern/index.js.map +1 -1
- package/build/components/add-new-template/index.js +3 -2
- package/build/components/add-new-template/index.js.map +1 -1
- package/build/components/add-new-template/new-template.js +6 -1
- package/build/components/add-new-template/new-template.js.map +1 -1
- package/build/components/add-new-template/utils.js +6 -1
- package/build/components/add-new-template/utils.js.map +1 -1
- package/build/components/app/index.js +2 -7
- package/build/components/app/index.js.map +1 -1
- package/build/components/block-editor/back-button.js +3 -2
- package/build/components/block-editor/back-button.js.map +1 -1
- package/build/components/block-editor/block-editor-provider/default-block-editor-provider.js +73 -0
- package/build/components/block-editor/block-editor-provider/default-block-editor-provider.js.map +1 -0
- package/build/components/block-editor/block-editor-provider/index.js +31 -0
- package/build/components/block-editor/block-editor-provider/index.js.map +1 -0
- package/build/components/block-editor/{providers → block-editor-provider}/navigation-block-editor-provider.js +2 -1
- package/build/components/block-editor/block-editor-provider/navigation-block-editor-provider.js.map +1 -0
- package/build/components/block-editor/block-editor-provider/use-page-content-blocks.js +76 -0
- package/build/components/block-editor/block-editor-provider/use-page-content-blocks.js.map +1 -0
- package/build/components/block-editor/editor-canvas.js +20 -16
- package/build/components/block-editor/editor-canvas.js.map +1 -1
- package/build/components/block-editor/index.js +2 -9
- package/build/components/block-editor/index.js.map +1 -1
- package/build/components/block-editor/site-editor-canvas.js +2 -4
- package/build/components/block-editor/site-editor-canvas.js.map +1 -1
- package/build/components/block-editor/use-site-editor-settings.js +8 -4
- package/build/components/block-editor/use-site-editor-settings.js.map +1 -1
- package/build/components/canvas-loader/index.js +18 -1
- package/build/components/canvas-loader/index.js.map +1 -1
- package/build/components/create-template-part-modal/index.js +8 -12
- package/build/components/create-template-part-modal/index.js.map +1 -1
- package/build/components/editor/index.js +7 -9
- package/build/components/editor/index.js.map +1 -1
- package/build/components/global-styles/dimensions-panel.js +5 -4
- package/build/components/global-styles/dimensions-panel.js.map +1 -1
- package/build/components/global-styles/font-families.js +68 -0
- package/build/components/global-styles/font-families.js.map +1 -0
- package/build/components/global-styles/font-family-item.js +47 -0
- package/build/components/global-styles/font-family-item.js.map +1 -0
- package/build/components/global-styles/font-library-modal/collection-font-details.js +49 -0
- package/build/components/global-styles/font-library-modal/collection-font-details.js.map +1 -0
- package/build/components/global-styles/font-library-modal/collection-font-variant.js +55 -0
- package/build/components/global-styles/font-library-modal/collection-font-variant.js.map +1 -0
- package/build/components/global-styles/font-library-modal/confirm-delete-dialog.js +31 -0
- package/build/components/global-styles/font-library-modal/confirm-delete-dialog.js.map +1 -0
- package/build/components/global-styles/font-library-modal/context.js +309 -0
- package/build/components/global-styles/font-library-modal/context.js.map +1 -0
- package/build/components/global-styles/font-library-modal/font-card.js +61 -0
- package/build/components/global-styles/font-library-modal/font-card.js.map +1 -0
- package/build/components/global-styles/font-library-modal/font-collection.js +172 -0
- package/build/components/global-styles/font-library-modal/font-collection.js.map +1 -0
- package/build/components/global-styles/font-library-modal/font-demo.js +86 -0
- package/build/components/global-styles/font-library-modal/font-demo.js.map +1 -0
- package/build/components/global-styles/font-library-modal/font-variant.js +51 -0
- package/build/components/global-styles/font-library-modal/font-variant.js.map +1 -0
- package/build/components/global-styles/font-library-modal/fonts-grid.js +54 -0
- package/build/components/global-styles/font-library-modal/fonts-grid.js.map +1 -0
- package/build/components/global-styles/font-library-modal/google-fonts-confirm-dialog.js +41 -0
- package/build/components/global-styles/font-library-modal/google-fonts-confirm-dialog.js.map +1 -0
- package/build/components/global-styles/font-library-modal/index.js +65 -0
- package/build/components/global-styles/font-library-modal/index.js.map +1 -0
- package/build/components/global-styles/font-library-modal/installed-fonts.js +128 -0
- package/build/components/global-styles/font-library-modal/installed-fonts.js.map +1 -0
- package/build/components/global-styles/font-library-modal/library-font-card.js +39 -0
- package/build/components/global-styles/font-library-modal/library-font-card.js.map +1 -0
- package/build/components/global-styles/font-library-modal/library-font-details.js +44 -0
- package/build/components/global-styles/font-library-modal/library-font-details.js.map +1 -0
- package/build/components/global-styles/font-library-modal/library-font-variant.js +59 -0
- package/build/components/global-styles/font-library-modal/library-font-variant.js.map +1 -0
- package/build/components/global-styles/font-library-modal/local-fonts.js +143 -0
- package/build/components/global-styles/font-library-modal/local-fonts.js.map +1 -0
- package/build/components/global-styles/font-library-modal/resolvers.js +53 -0
- package/build/components/global-styles/font-library-modal/resolvers.js.map +1 -0
- package/build/components/global-styles/font-library-modal/tab-layout.js +45 -0
- package/build/components/global-styles/font-library-modal/tab-layout.js.map +1 -0
- package/build/components/global-styles/font-library-modal/utils/constants.js +31 -0
- package/build/components/global-styles/font-library-modal/utils/constants.js.map +1 -0
- package/build/components/global-styles/font-library-modal/utils/filter-fonts.js +21 -0
- package/build/components/global-styles/font-library-modal/utils/filter-fonts.js.map +1 -0
- package/build/components/global-styles/font-library-modal/utils/fonts-outline.js +20 -0
- package/build/components/global-styles/font-library-modal/utils/fonts-outline.js.map +1 -0
- package/build/components/global-styles/font-library-modal/utils/get-intersecting-font-faces.js +58 -0
- package/build/components/global-styles/font-library-modal/utils/get-intersecting-font-faces.js.map +1 -0
- package/build/components/global-styles/font-library-modal/utils/index.js +155 -0
- package/build/components/global-styles/font-library-modal/utils/index.js.map +1 -0
- package/build/components/global-styles/font-library-modal/utils/make-families-from-faces.js +22 -0
- package/build/components/global-styles/font-library-modal/utils/make-families-from-faces.js.map +1 -0
- package/build/components/global-styles/font-library-modal/utils/preview-styles.js +76 -0
- package/build/components/global-styles/font-library-modal/utils/preview-styles.js.map +1 -0
- package/build/components/global-styles/font-library-modal/utils/sort-font-faces.js +36 -0
- package/build/components/global-styles/font-library-modal/utils/sort-font-faces.js.map +1 -0
- package/build/components/global-styles/font-library-modal/utils/toggleFont.js +92 -0
- package/build/components/global-styles/font-library-modal/utils/toggleFont.js.map +1 -0
- package/build/components/global-styles/global-styles-provider.js +7 -12
- package/build/components/global-styles/global-styles-provider.js.map +1 -1
- package/build/components/global-styles/screen-block.js +34 -21
- package/build/components/global-styles/screen-block.js.map +1 -1
- package/build/components/global-styles/screen-revisions/index.js +1 -3
- package/build/components/global-styles/screen-revisions/index.js.map +1 -1
- package/build/components/global-styles/screen-revisions/use-global-styles-revisions.js +0 -1
- package/build/components/global-styles/screen-revisions/use-global-styles-revisions.js.map +1 -1
- package/build/components/global-styles/screen-typography.js +4 -72
- package/build/components/global-styles/screen-typography.js.map +1 -1
- package/build/components/global-styles/style-variations-container.js +3 -5
- package/build/components/global-styles/style-variations-container.js.map +1 -1
- package/build/components/global-styles/typogrphy-elements.js +96 -0
- package/build/components/global-styles/typogrphy-elements.js.map +1 -0
- package/build/components/header-edit-mode/document-actions/index.js +9 -8
- package/build/components/header-edit-mode/document-actions/index.js.map +1 -1
- package/build/components/header-edit-mode/index.js +4 -1
- package/build/components/header-edit-mode/index.js.map +1 -1
- package/build/components/layout/index.js +5 -1
- package/build/components/layout/index.js.map +1 -1
- package/build/components/list/added-by.js +13 -8
- package/build/components/list/added-by.js.map +1 -1
- package/build/components/list/index.js +2 -1
- package/build/components/list/index.js.map +1 -1
- package/build/components/page-content-focus-manager/disable-non-page-content-blocks.js +2 -3
- package/build/components/page-content-focus-manager/disable-non-page-content-blocks.js.map +1 -1
- package/build/components/page-patterns/duplicate-menu-item.js +56 -20
- package/build/components/page-patterns/duplicate-menu-item.js.map +1 -1
- package/build/components/page-patterns/grid-item.js +48 -22
- package/build/components/page-patterns/grid-item.js.map +1 -1
- package/build/components/page-patterns/header.js +3 -7
- package/build/components/page-patterns/header.js.map +1 -1
- package/build/components/page-patterns/index.js +3 -3
- package/build/components/page-patterns/index.js.map +1 -1
- package/build/components/page-patterns/patterns-list.js +7 -7
- package/build/components/page-patterns/patterns-list.js.map +1 -1
- package/build/components/page-patterns/rename-menu-item.js +6 -5
- package/build/components/page-patterns/rename-menu-item.js.map +1 -1
- package/build/components/page-patterns/search-items.js +8 -2
- package/build/components/page-patterns/search-items.js.map +1 -1
- package/build/components/page-patterns/use-patterns.js +71 -51
- package/build/components/page-patterns/use-patterns.js.map +1 -1
- package/build/components/page-patterns/utils.js +1 -20
- package/build/components/page-patterns/utils.js.map +1 -1
- package/build/components/page-template-parts/add-new-template-part.js +3 -2
- package/build/components/page-template-parts/add-new-template-part.js.map +1 -1
- package/build/components/page-template-parts/index.js +2 -1
- package/build/components/page-template-parts/index.js.map +1 -1
- package/build/components/page-templates/index.js +3 -2
- package/build/components/page-templates/index.js.map +1 -1
- package/build/components/save-hub/index.js +2 -1
- package/build/components/save-hub/index.js.map +1 -1
- package/build/components/secondary-sidebar/list-view-sidebar.js +24 -17
- package/build/components/secondary-sidebar/list-view-sidebar.js.map +1 -1
- package/build/components/sidebar-edit-mode/page-panels/edit-template.js +53 -26
- package/build/components/sidebar-edit-mode/page-panels/edit-template.js.map +1 -1
- package/build/components/sidebar-edit-mode/page-panels/hooks.js +65 -0
- package/build/components/sidebar-edit-mode/page-panels/hooks.js.map +1 -0
- package/build/components/sidebar-edit-mode/page-panels/index.js +1 -4
- package/build/components/sidebar-edit-mode/page-panels/index.js.map +1 -1
- package/build/components/sidebar-edit-mode/page-panels/page-summary.js +2 -1
- package/build/components/sidebar-edit-mode/page-panels/page-summary.js.map +1 -1
- package/build/components/sidebar-edit-mode/page-panels/reset-default-template.js +56 -0
- package/build/components/sidebar-edit-mode/page-panels/reset-default-template.js.map +1 -0
- package/build/components/sidebar-edit-mode/page-panels/swap-template-button.js +91 -0
- package/build/components/sidebar-edit-mode/page-panels/swap-template-button.js.map +1 -0
- package/build/components/sidebar-edit-mode/settings-header/index.js +2 -6
- package/build/components/sidebar-edit-mode/settings-header/index.js.map +1 -1
- package/build/components/sidebar-edit-mode/template-panel/index.js +11 -9
- package/build/components/sidebar-edit-mode/template-panel/index.js.map +1 -1
- package/build/components/sidebar-edit-mode/template-panel/last-revision.js +6 -4
- package/build/components/sidebar-edit-mode/template-panel/last-revision.js.map +1 -1
- package/build/components/sidebar-edit-mode/template-panel/pattern-categories.js +218 -0
- package/build/components/sidebar-edit-mode/template-panel/pattern-categories.js.map +1 -0
- package/build/components/sidebar-navigation-screen/index.js +6 -4
- package/build/components/sidebar-navigation-screen/index.js.map +1 -1
- package/build/components/sidebar-navigation-screen-details-footer/index.js +32 -4
- package/build/components/sidebar-navigation-screen-details-footer/index.js.map +1 -1
- package/build/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-row.js +4 -2
- package/build/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-row.js.map +1 -1
- package/build/components/sidebar-navigation-screen-global-styles/index.js +4 -31
- package/build/components/sidebar-navigation-screen-global-styles/index.js.map +1 -1
- package/build/components/sidebar-navigation-screen-navigation-menu/edit-button.js +2 -1
- package/build/components/sidebar-navigation-screen-navigation-menu/edit-button.js.map +1 -1
- package/build/components/sidebar-navigation-screen-navigation-menu/use-navigation-menu-handlers.js +2 -1
- package/build/components/sidebar-navigation-screen-navigation-menu/use-navigation-menu-handlers.js.map +1 -1
- package/build/components/sidebar-navigation-screen-navigation-menus/index.js +3 -2
- package/build/components/sidebar-navigation-screen-navigation-menus/index.js.map +1 -1
- package/build/components/sidebar-navigation-screen-page/index.js +3 -3
- package/build/components/sidebar-navigation-screen-page/index.js.map +1 -1
- package/build/components/sidebar-navigation-screen-page/page-details.js +2 -1
- package/build/components/sidebar-navigation-screen-page/page-details.js.map +1 -1
- package/build/components/sidebar-navigation-screen-pages/index.js +5 -4
- package/build/components/sidebar-navigation-screen-pages/index.js.map +1 -1
- package/build/components/sidebar-navigation-screen-pattern/index.js +20 -9
- package/build/components/sidebar-navigation-screen-pattern/index.js.map +1 -1
- package/build/components/sidebar-navigation-screen-pattern/template-part-navigation-menu-list-item.js +3 -2
- package/build/components/sidebar-navigation-screen-pattern/template-part-navigation-menu-list-item.js.map +1 -1
- package/build/components/sidebar-navigation-screen-pattern/template-part-navigation-menu.js +2 -1
- package/build/components/sidebar-navigation-screen-pattern/template-part-navigation-menu.js.map +1 -1
- package/build/components/sidebar-navigation-screen-pattern/use-navigation-menu-content.js +2 -1
- package/build/components/sidebar-navigation-screen-pattern/use-navigation-menu-content.js.map +1 -1
- package/build/components/sidebar-navigation-screen-pattern/use-pattern-details.js +41 -11
- package/build/components/sidebar-navigation-screen-pattern/use-pattern-details.js.map +1 -1
- package/build/components/sidebar-navigation-screen-patterns/index.js +9 -37
- package/build/components/sidebar-navigation-screen-patterns/index.js.map +1 -1
- package/build/components/sidebar-navigation-screen-patterns/use-pattern-categories.js +44 -5
- package/build/components/sidebar-navigation-screen-patterns/use-pattern-categories.js.map +1 -1
- package/build/components/sidebar-navigation-screen-patterns/use-template-part-areas.js +7 -2
- package/build/components/sidebar-navigation-screen-patterns/use-template-part-areas.js.map +1 -1
- package/build/components/sidebar-navigation-screen-patterns/use-theme-patterns.js +2 -1
- package/build/components/sidebar-navigation-screen-patterns/use-theme-patterns.js.map +1 -1
- package/build/components/sidebar-navigation-screen-template/home-template-details.js +2 -1
- package/build/components/sidebar-navigation-screen-template/home-template-details.js.map +1 -1
- package/build/components/sidebar-navigation-screen-template/index.js +2 -2
- package/build/components/sidebar-navigation-screen-template/index.js.map +1 -1
- package/build/components/sidebar-navigation-screen-templates/index.js +5 -4
- package/build/components/sidebar-navigation-screen-templates/index.js.map +1 -1
- package/build/components/sidebar-navigation-screen-templates-browse/index.js +3 -2
- package/build/components/sidebar-navigation-screen-templates-browse/index.js.map +1 -1
- package/build/components/start-template-options/index.js +20 -2
- package/build/components/start-template-options/index.js.map +1 -1
- package/build/components/sync-state-with-url/use-init-edited-entity-from-url.js +5 -4
- package/build/components/sync-state-with-url/use-init-edited-entity-from-url.js.map +1 -1
- package/build/components/sync-state-with-url/use-sync-path-with-url.js +4 -3
- package/build/components/sync-state-with-url/use-sync-path-with-url.js.map +1 -1
- package/build/components/template-actions/index.js +8 -4
- package/build/components/template-actions/index.js.map +1 -1
- package/build/components/template-actions/rename-menu-item.js +9 -3
- package/build/components/template-actions/rename-menu-item.js.map +1 -1
- package/build/components/welcome-guide/styles.js +2 -2
- package/build/components/welcome-guide/styles.js.map +1 -1
- package/build/hooks/commands/use-edit-mode-commands.js +4 -3
- package/build/hooks/commands/use-edit-mode-commands.js.map +1 -1
- package/build/hooks/navigation-menu-edit.js +2 -1
- package/build/hooks/navigation-menu-edit.js.map +1 -1
- package/build/hooks/push-changes-to-global-styles/index.js +5 -37
- package/build/hooks/push-changes-to-global-styles/index.js.map +1 -1
- package/build/hooks/template-part-edit.js +2 -1
- package/build/hooks/template-part-edit.js.map +1 -1
- package/build/store/actions.js +38 -14
- package/build/store/actions.js.map +1 -1
- package/build/store/constants.js +1 -9
- package/build/store/constants.js.map +1 -1
- package/build/store/private-actions.js +21 -1
- package/build/store/private-actions.js.map +1 -1
- package/build/store/private-selectors.js +23 -0
- package/build/store/private-selectors.js.map +1 -1
- package/build/store/reducer.js +19 -1
- package/build/store/reducer.js.map +1 -1
- package/build/store/selectors.js +3 -2
- package/build/store/selectors.js.map +1 -1
- package/build/utils/constants.js +64 -2
- package/build/utils/constants.js.map +1 -1
- package/build/utils/is-template-removable.js +6 -1
- package/build/utils/is-template-removable.js.map +1 -1
- package/build/utils/is-template-revertable.js +6 -1
- package/build/utils/is-template-revertable.js.map +1 -1
- package/build/utils/template-part-create.js +6 -1
- package/build/utils/template-part-create.js.map +1 -1
- package/build-module/components/add-new-pattern/index.js +69 -8
- package/build-module/components/add-new-pattern/index.js.map +1 -1
- package/build-module/components/add-new-template/index.js +3 -2
- package/build-module/components/add-new-template/index.js.map +1 -1
- package/build-module/components/add-new-template/new-template.js +6 -1
- package/build-module/components/add-new-template/new-template.js.map +1 -1
- package/build-module/components/add-new-template/utils.js +6 -1
- package/build-module/components/add-new-template/utils.js.map +1 -1
- package/build-module/components/app/index.js +2 -7
- package/build-module/components/app/index.js.map +1 -1
- package/build-module/components/block-editor/back-button.js +3 -2
- package/build-module/components/block-editor/back-button.js.map +1 -1
- package/build-module/components/block-editor/block-editor-provider/default-block-editor-provider.js +65 -0
- package/build-module/components/block-editor/block-editor-provider/default-block-editor-provider.js.map +1 -0
- package/build-module/components/block-editor/block-editor-provider/index.js +23 -0
- package/build-module/components/block-editor/block-editor-provider/index.js.map +1 -0
- package/build-module/components/block-editor/{providers → block-editor-provider}/navigation-block-editor-provider.js +2 -1
- package/build-module/components/block-editor/block-editor-provider/navigation-block-editor-provider.js.map +1 -0
- package/build-module/components/block-editor/block-editor-provider/use-page-content-blocks.js +70 -0
- package/build-module/components/block-editor/block-editor-provider/use-page-content-blocks.js.map +1 -0
- package/build-module/components/block-editor/editor-canvas.js +21 -17
- package/build-module/components/block-editor/editor-canvas.js.map +1 -1
- package/build-module/components/block-editor/index.js +1 -8
- package/build-module/components/block-editor/index.js.map +1 -1
- package/build-module/components/block-editor/site-editor-canvas.js +5 -7
- package/build-module/components/block-editor/site-editor-canvas.js.map +1 -1
- package/build-module/components/block-editor/use-site-editor-settings.js +8 -4
- package/build-module/components/block-editor/use-site-editor-settings.js.map +1 -1
- package/build-module/components/canvas-loader/index.js +18 -1
- package/build-module/components/canvas-loader/index.js.map +1 -1
- package/build-module/components/create-template-part-modal/index.js +8 -12
- package/build-module/components/create-template-part-modal/index.js.map +1 -1
- package/build-module/components/editor/index.js +7 -9
- package/build-module/components/editor/index.js.map +1 -1
- package/build-module/components/global-styles/dimensions-panel.js +5 -4
- package/build-module/components/global-styles/dimensions-panel.js.map +1 -1
- package/build-module/components/global-styles/font-families.js +58 -0
- package/build-module/components/global-styles/font-families.js.map +1 -0
- package/build-module/components/global-styles/font-family-item.js +40 -0
- package/build-module/components/global-styles/font-family-item.js.map +1 -0
- package/build-module/components/global-styles/font-library-modal/collection-font-details.js +40 -0
- package/build-module/components/global-styles/font-library-modal/collection-font-details.js.map +1 -0
- package/build-module/components/global-styles/font-library-modal/collection-font-variant.js +45 -0
- package/build-module/components/global-styles/font-library-modal/collection-font-variant.js.map +1 -0
- package/build-module/components/global-styles/font-library-modal/confirm-delete-dialog.js +23 -0
- package/build-module/components/global-styles/font-library-modal/confirm-delete-dialog.js.map +1 -0
- package/build-module/components/global-styles/font-library-modal/context.js +300 -0
- package/build-module/components/global-styles/font-library-modal/context.js.map +1 -0
- package/build-module/components/global-styles/font-library-modal/font-card.js +52 -0
- package/build-module/components/global-styles/font-library-modal/font-card.js.map +1 -0
- package/build-module/components/global-styles/font-library-modal/font-collection.js +164 -0
- package/build-module/components/global-styles/font-library-modal/font-collection.js.map +1 -0
- package/build-module/components/global-styles/font-library-modal/font-demo.js +79 -0
- package/build-module/components/global-styles/font-library-modal/font-demo.js.map +1 -0
- package/build-module/components/global-styles/font-library-modal/font-variant.js +42 -0
- package/build-module/components/global-styles/font-library-modal/font-variant.js.map +1 -0
- package/build-module/components/global-styles/font-library-modal/fonts-grid.js +47 -0
- package/build-module/components/global-styles/font-library-modal/fonts-grid.js.map +1 -0
- package/build-module/components/global-styles/font-library-modal/google-fonts-confirm-dialog.js +33 -0
- package/build-module/components/global-styles/font-library-modal/google-fonts-confirm-dialog.js.map +1 -0
- package/build-module/components/global-styles/font-library-modal/index.js +57 -0
- package/build-module/components/global-styles/font-library-modal/index.js.map +1 -0
- package/build-module/components/global-styles/font-library-modal/installed-fonts.js +120 -0
- package/build-module/components/global-styles/font-library-modal/installed-fonts.js.map +1 -0
- package/build-module/components/global-styles/font-library-modal/library-font-card.js +31 -0
- package/build-module/components/global-styles/font-library-modal/library-font-card.js.map +1 -0
- package/build-module/components/global-styles/font-library-modal/library-font-details.js +35 -0
- package/build-module/components/global-styles/font-library-modal/library-font-details.js.map +1 -0
- package/build-module/components/global-styles/font-library-modal/library-font-variant.js +50 -0
- package/build-module/components/global-styles/font-library-modal/library-font-variant.js.map +1 -0
- package/build-module/components/global-styles/font-library-modal/local-fonts.js +135 -0
- package/build-module/components/global-styles/font-library-modal/local-fonts.js.map +1 -0
- package/build-module/components/global-styles/font-library-modal/resolvers.js +42 -0
- package/build-module/components/global-styles/font-library-modal/resolvers.js.map +1 -0
- package/build-module/components/global-styles/font-library-modal/tab-layout.js +37 -0
- package/build-module/components/global-styles/font-library-modal/tab-layout.js.map +1 -0
- package/build-module/components/global-styles/font-library-modal/utils/constants.js +21 -0
- package/build-module/components/global-styles/font-library-modal/utils/constants.js.map +1 -0
- package/build-module/components/global-styles/font-library-modal/utils/filter-fonts.js +15 -0
- package/build-module/components/global-styles/font-library-modal/utils/filter-fonts.js.map +1 -0
- package/build-module/components/global-styles/font-library-modal/utils/fonts-outline.js +13 -0
- package/build-module/components/global-styles/font-library-modal/utils/fonts-outline.js.map +1 -0
- package/build-module/components/global-styles/font-library-modal/utils/get-intersecting-font-faces.js +52 -0
- package/build-module/components/global-styles/font-library-modal/utils/get-intersecting-font-faces.js.map +1 -0
- package/build-module/components/global-styles/font-library-modal/utils/index.js +141 -0
- package/build-module/components/global-styles/font-library-modal/utils/index.js.map +1 -0
- package/build-module/components/global-styles/font-library-modal/utils/make-families-from-faces.js +16 -0
- package/build-module/components/global-styles/font-library-modal/utils/make-families-from-faces.js.map +1 -0
- package/build-module/components/global-styles/font-library-modal/utils/preview-styles.js +68 -0
- package/build-module/components/global-styles/font-library-modal/utils/preview-styles.js.map +1 -0
- package/build-module/components/global-styles/font-library-modal/utils/sort-font-faces.js +30 -0
- package/build-module/components/global-styles/font-library-modal/utils/sort-font-faces.js.map +1 -0
- package/build-module/components/global-styles/font-library-modal/utils/toggleFont.js +86 -0
- package/build-module/components/global-styles/font-library-modal/utils/toggleFont.js.map +1 -0
- package/build-module/components/global-styles/global-styles-provider.js +7 -12
- package/build-module/components/global-styles/global-styles-provider.js.map +1 -1
- package/build-module/components/global-styles/screen-block.js +34 -21
- package/build-module/components/global-styles/screen-block.js.map +1 -1
- package/build-module/components/global-styles/screen-revisions/index.js +1 -3
- package/build-module/components/global-styles/screen-revisions/index.js.map +1 -1
- package/build-module/components/global-styles/screen-revisions/use-global-styles-revisions.js +0 -1
- package/build-module/components/global-styles/screen-revisions/use-global-styles-revisions.js.map +1 -1
- package/build-module/components/global-styles/screen-typography.js +6 -74
- package/build-module/components/global-styles/screen-typography.js.map +1 -1
- package/build-module/components/global-styles/style-variations-container.js +3 -5
- package/build-module/components/global-styles/style-variations-container.js.map +1 -1
- package/build-module/components/global-styles/typogrphy-elements.js +87 -0
- package/build-module/components/global-styles/typogrphy-elements.js.map +1 -0
- package/build-module/components/header-edit-mode/document-actions/index.js +9 -8
- package/build-module/components/header-edit-mode/document-actions/index.js.map +1 -1
- package/build-module/components/header-edit-mode/index.js +4 -1
- package/build-module/components/header-edit-mode/index.js.map +1 -1
- package/build-module/components/layout/index.js +5 -1
- package/build-module/components/layout/index.js.map +1 -1
- package/build-module/components/list/added-by.js +13 -8
- package/build-module/components/list/added-by.js.map +1 -1
- package/build-module/components/list/index.js +2 -1
- package/build-module/components/list/index.js.map +1 -1
- package/build-module/components/page-content-focus-manager/disable-non-page-content-blocks.js +2 -3
- package/build-module/components/page-content-focus-manager/disable-non-page-content-blocks.js.map +1 -1
- package/build-module/components/page-patterns/duplicate-menu-item.js +55 -20
- package/build-module/components/page-patterns/duplicate-menu-item.js.map +1 -1
- package/build-module/components/page-patterns/grid-item.js +49 -23
- package/build-module/components/page-patterns/grid-item.js.map +1 -1
- package/build-module/components/page-patterns/header.js +3 -7
- package/build-module/components/page-patterns/header.js.map +1 -1
- package/build-module/components/page-patterns/index.js +3 -3
- package/build-module/components/page-patterns/index.js.map +1 -1
- package/build-module/components/page-patterns/patterns-list.js +7 -7
- package/build-module/components/page-patterns/patterns-list.js.map +1 -1
- package/build-module/components/page-patterns/rename-menu-item.js +6 -5
- package/build-module/components/page-patterns/rename-menu-item.js.map +1 -1
- package/build-module/components/page-patterns/search-items.js +8 -2
- package/build-module/components/page-patterns/search-items.js.map +1 -1
- package/build-module/components/page-patterns/use-patterns.js +71 -52
- package/build-module/components/page-patterns/use-patterns.js.map +1 -1
- package/build-module/components/page-patterns/utils.js +0 -11
- package/build-module/components/page-patterns/utils.js.map +1 -1
- package/build-module/components/page-template-parts/add-new-template-part.js +3 -2
- package/build-module/components/page-template-parts/add-new-template-part.js.map +1 -1
- package/build-module/components/page-template-parts/index.js +2 -1
- package/build-module/components/page-template-parts/index.js.map +1 -1
- package/build-module/components/page-templates/index.js +3 -2
- package/build-module/components/page-templates/index.js.map +1 -1
- package/build-module/components/save-hub/index.js +2 -1
- package/build-module/components/save-hub/index.js.map +1 -1
- package/build-module/components/secondary-sidebar/list-view-sidebar.js +26 -19
- package/build-module/components/secondary-sidebar/list-view-sidebar.js.map +1 -1
- package/build-module/components/sidebar-edit-mode/page-panels/edit-template.js +54 -29
- package/build-module/components/sidebar-edit-mode/page-panels/edit-template.js.map +1 -1
- package/build-module/components/sidebar-edit-mode/page-panels/hooks.js +55 -0
- package/build-module/components/sidebar-edit-mode/page-panels/hooks.js.map +1 -0
- package/build-module/components/sidebar-edit-mode/page-panels/index.js +1 -4
- package/build-module/components/sidebar-edit-mode/page-panels/index.js.map +1 -1
- package/build-module/components/sidebar-edit-mode/page-panels/page-summary.js +2 -1
- package/build-module/components/sidebar-edit-mode/page-panels/page-summary.js.map +1 -1
- package/build-module/components/sidebar-edit-mode/page-panels/reset-default-template.js +49 -0
- package/build-module/components/sidebar-edit-mode/page-panels/reset-default-template.js.map +1 -0
- package/build-module/components/sidebar-edit-mode/page-panels/swap-template-button.js +85 -0
- package/build-module/components/sidebar-edit-mode/page-panels/swap-template-button.js.map +1 -0
- package/build-module/components/sidebar-edit-mode/settings-header/index.js +2 -6
- package/build-module/components/sidebar-edit-mode/settings-header/index.js.map +1 -1
- package/build-module/components/sidebar-edit-mode/template-panel/index.js +12 -10
- package/build-module/components/sidebar-edit-mode/template-panel/index.js.map +1 -1
- package/build-module/components/sidebar-edit-mode/template-panel/last-revision.js +8 -6
- package/build-module/components/sidebar-edit-mode/template-panel/last-revision.js.map +1 -1
- package/build-module/components/sidebar-edit-mode/template-panel/pattern-categories.js +209 -0
- package/build-module/components/sidebar-edit-mode/template-panel/pattern-categories.js.map +1 -0
- package/build-module/components/sidebar-navigation-screen/index.js +6 -4
- package/build-module/components/sidebar-navigation-screen/index.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-details-footer/index.js +32 -5
- package/build-module/components/sidebar-navigation-screen-details-footer/index.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-row.js +4 -2
- package/build-module/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-row.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-global-styles/index.js +6 -33
- package/build-module/components/sidebar-navigation-screen-global-styles/index.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-navigation-menu/edit-button.js +2 -1
- package/build-module/components/sidebar-navigation-screen-navigation-menu/edit-button.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-navigation-menu/use-navigation-menu-handlers.js +3 -1
- package/build-module/components/sidebar-navigation-screen-navigation-menu/use-navigation-menu-handlers.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-navigation-menus/index.js +3 -2
- package/build-module/components/sidebar-navigation-screen-navigation-menus/index.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-page/index.js +3 -3
- package/build-module/components/sidebar-navigation-screen-page/index.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-page/page-details.js +2 -1
- package/build-module/components/sidebar-navigation-screen-page/page-details.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-pages/index.js +5 -4
- package/build-module/components/sidebar-navigation-screen-pages/index.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-pattern/index.js +21 -10
- package/build-module/components/sidebar-navigation-screen-pattern/index.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-pattern/template-part-navigation-menu-list-item.js +3 -2
- package/build-module/components/sidebar-navigation-screen-pattern/template-part-navigation-menu-list-item.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-pattern/template-part-navigation-menu.js +2 -1
- package/build-module/components/sidebar-navigation-screen-pattern/template-part-navigation-menu.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-pattern/use-navigation-menu-content.js +2 -1
- package/build-module/components/sidebar-navigation-screen-pattern/use-navigation-menu-content.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-pattern/use-pattern-details.js +41 -11
- package/build-module/components/sidebar-navigation-screen-pattern/use-pattern-details.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-patterns/index.js +12 -40
- package/build-module/components/sidebar-navigation-screen-patterns/index.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-patterns/use-pattern-categories.js +44 -5
- package/build-module/components/sidebar-navigation-screen-patterns/use-pattern-categories.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-patterns/use-template-part-areas.js +7 -2
- package/build-module/components/sidebar-navigation-screen-patterns/use-template-part-areas.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-patterns/use-theme-patterns.js +3 -2
- package/build-module/components/sidebar-navigation-screen-patterns/use-theme-patterns.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-template/home-template-details.js +2 -1
- package/build-module/components/sidebar-navigation-screen-template/home-template-details.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-template/index.js +2 -2
- package/build-module/components/sidebar-navigation-screen-template/index.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-templates/index.js +5 -4
- package/build-module/components/sidebar-navigation-screen-templates/index.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-templates-browse/index.js +3 -2
- package/build-module/components/sidebar-navigation-screen-templates-browse/index.js.map +1 -1
- package/build-module/components/start-template-options/index.js +20 -2
- package/build-module/components/start-template-options/index.js.map +1 -1
- package/build-module/components/sync-state-with-url/use-init-edited-entity-from-url.js +5 -4
- package/build-module/components/sync-state-with-url/use-init-edited-entity-from-url.js.map +1 -1
- package/build-module/components/sync-state-with-url/use-sync-path-with-url.js +4 -3
- package/build-module/components/sync-state-with-url/use-sync-path-with-url.js.map +1 -1
- package/build-module/components/template-actions/index.js +8 -4
- package/build-module/components/template-actions/index.js.map +1 -1
- package/build-module/components/template-actions/rename-menu-item.js +9 -3
- package/build-module/components/template-actions/rename-menu-item.js.map +1 -1
- package/build-module/components/welcome-guide/styles.js +2 -2
- package/build-module/components/welcome-guide/styles.js.map +1 -1
- package/build-module/hooks/commands/use-edit-mode-commands.js +4 -3
- package/build-module/hooks/commands/use-edit-mode-commands.js.map +1 -1
- package/build-module/hooks/navigation-menu-edit.js +2 -1
- package/build-module/hooks/navigation-menu-edit.js.map +1 -1
- package/build-module/hooks/push-changes-to-global-styles/index.js +5 -37
- package/build-module/hooks/push-changes-to-global-styles/index.js.map +1 -1
- package/build-module/hooks/template-part-edit.js +2 -1
- package/build-module/hooks/template-part-edit.js.map +1 -1
- package/build-module/store/actions.js +39 -16
- package/build-module/store/actions.js.map +1 -1
- package/build-module/store/constants.js +0 -4
- package/build-module/store/constants.js.map +1 -1
- package/build-module/store/private-actions.js +19 -0
- package/build-module/store/private-actions.js.map +1 -1
- package/build-module/store/private-selectors.js +22 -0
- package/build-module/store/private-selectors.js.map +1 -1
- package/build-module/store/reducer.js +18 -1
- package/build-module/store/reducer.js.map +1 -1
- package/build-module/store/selectors.js +3 -3
- package/build-module/store/selectors.js.map +1 -1
- package/build-module/utils/constants.js +51 -1
- package/build-module/utils/constants.js.map +1 -1
- package/build-module/utils/is-template-removable.js +6 -1
- package/build-module/utils/is-template-removable.js.map +1 -1
- package/build-module/utils/is-template-revertable.js +6 -1
- package/build-module/utils/is-template-revertable.js.map +1 -1
- package/build-module/utils/template-part-create.js +6 -1
- package/build-module/utils/template-part-create.js.map +1 -1
- package/build-style/style-rtl.css +267 -37
- package/build-style/style.css +267 -37
- package/lib/inflate.js +4082 -0
- package/lib/lib-font.browser.js +3831 -0
- package/lib/unbrotli.js +2679 -0
- package/package.json +40 -40
- package/src/components/add-new-pattern/index.js +86 -8
- package/src/components/add-new-template/index.js +3 -2
- package/src/components/add-new-template/new-template.js +6 -1
- package/src/components/add-new-template/utils.js +12 -3
- package/src/components/app/index.js +9 -12
- package/src/components/block-editor/back-button.js +6 -2
- package/src/components/block-editor/block-editor-provider/default-block-editor-provider.js +70 -0
- package/src/components/block-editor/block-editor-provider/index.js +29 -0
- package/src/components/block-editor/{providers → block-editor-provider}/navigation-block-editor-provider.js +2 -1
- package/src/components/block-editor/block-editor-provider/test/use-page-content-blocks.js +87 -0
- package/src/components/block-editor/block-editor-provider/use-page-content-blocks.js +77 -0
- package/src/components/block-editor/editor-canvas.js +31 -19
- package/src/components/block-editor/index.js +1 -14
- package/src/components/block-editor/site-editor-canvas.js +7 -12
- package/src/components/block-editor/style.scss +88 -1
- package/src/components/block-editor/use-site-editor-settings.js +26 -19
- package/src/components/canvas-loader/index.js +12 -1
- package/src/components/canvas-loader/style.scss +1 -1
- package/src/components/create-template-part-modal/index.js +11 -12
- package/src/components/editor/index.js +9 -10
- package/src/components/global-styles/dimensions-panel.js +8 -4
- package/src/components/global-styles/font-families.js +71 -0
- package/src/components/global-styles/font-family-item.js +44 -0
- package/src/components/global-styles/font-library-modal/collection-font-details.js +56 -0
- package/src/components/global-styles/font-library-modal/collection-font-variant.js +45 -0
- package/src/components/global-styles/font-library-modal/confirm-delete-dialog.js +33 -0
- package/src/components/global-styles/font-library-modal/context.js +378 -0
- package/src/components/global-styles/font-library-modal/font-card.js +75 -0
- package/src/components/global-styles/font-library-modal/font-collection.js +257 -0
- package/src/components/global-styles/font-library-modal/font-demo.js +83 -0
- package/src/components/global-styles/font-library-modal/font-variant.js +53 -0
- package/src/components/global-styles/font-library-modal/fonts-grid.js +55 -0
- package/src/components/global-styles/font-library-modal/google-fonts-confirm-dialog.js +50 -0
- package/src/components/global-styles/font-library-modal/index.js +67 -0
- package/src/components/global-styles/font-library-modal/installed-fonts.js +174 -0
- package/src/components/global-styles/font-library-modal/library-font-card.js +33 -0
- package/src/components/global-styles/font-library-modal/library-font-details.js +45 -0
- package/src/components/global-styles/font-library-modal/library-font-variant.js +54 -0
- package/src/components/global-styles/font-library-modal/local-fonts.js +160 -0
- package/src/components/global-styles/font-library-modal/resolvers.js +45 -0
- package/src/components/global-styles/font-library-modal/style.scss +139 -0
- package/src/components/global-styles/font-library-modal/tab-layout.js +50 -0
- package/src/components/global-styles/font-library-modal/utils/constants.js +23 -0
- package/src/components/global-styles/font-library-modal/utils/filter-fonts.js +18 -0
- package/src/components/global-styles/font-library-modal/utils/fonts-outline.js +21 -0
- package/src/components/global-styles/font-library-modal/utils/get-intersecting-font-faces.js +58 -0
- package/src/components/global-styles/font-library-modal/utils/index.js +153 -0
- package/src/components/global-styles/font-library-modal/utils/make-families-from-faces.js +15 -0
- package/src/components/global-styles/font-library-modal/utils/preview-styles.js +86 -0
- package/src/components/global-styles/font-library-modal/utils/sort-font-faces.js +33 -0
- package/src/components/global-styles/font-library-modal/utils/test/filter-fonts.spec.js +69 -0
- package/src/components/global-styles/font-library-modal/utils/test/fonts-outline.spec.js +109 -0
- package/src/components/global-styles/font-library-modal/utils/test/getDisplaySrcFromFontFace.spec.js +53 -0
- package/src/components/global-styles/font-library-modal/utils/test/getFontFaceVariantName.spec.js +30 -0
- package/src/components/global-styles/font-library-modal/utils/test/getIntersectingFontFaces.spec.js +240 -0
- package/src/components/global-styles/font-library-modal/utils/test/isUrlEncoded.spec.js +31 -0
- package/src/components/global-styles/font-library-modal/utils/test/makeFamiliesFromFaces.spec.js +57 -0
- package/src/components/global-styles/font-library-modal/utils/test/makeFormDataFromFontFamilies.spec.js +62 -0
- package/src/components/global-styles/font-library-modal/utils/test/mergeFontFaces.spec.js +56 -0
- package/src/components/global-styles/font-library-modal/utils/test/mergeFontFamilies.spec.js +108 -0
- package/src/components/global-styles/font-library-modal/utils/test/preview-styles.spec.js +161 -0
- package/src/components/global-styles/font-library-modal/utils/test/setUIValuesNeeded.spec.js +41 -0
- package/src/components/global-styles/font-library-modal/utils/test/sort-font-faces.js +74 -0
- package/src/components/global-styles/font-library-modal/utils/test/toggleFont.spec.js +141 -0
- package/src/components/global-styles/font-library-modal/utils/toggleFont.js +90 -0
- package/src/components/global-styles/global-styles-provider.js +2 -7
- package/src/components/global-styles/screen-block.js +42 -20
- package/src/components/global-styles/screen-revisions/index.js +0 -2
- package/src/components/global-styles/screen-revisions/use-global-styles-revisions.js +0 -1
- package/src/components/global-styles/screen-typography.js +9 -95
- package/src/components/global-styles/style-variations-container.js +0 -2
- package/src/components/global-styles/typogrphy-elements.js +110 -0
- package/src/components/header-edit-mode/document-actions/index.js +17 -8
- package/src/components/header-edit-mode/index.js +2 -1
- package/src/components/layout/index.js +10 -1
- package/src/components/list/added-by.js +29 -11
- package/src/components/list/index.js +7 -1
- package/src/components/list/style.scss +2 -0
- package/src/components/page-content-focus-manager/disable-non-page-content-blocks.js +2 -8
- package/src/components/page-patterns/duplicate-menu-item.js +67 -24
- package/src/components/page-patterns/grid-item.js +80 -33
- package/src/components/page-patterns/header.js +3 -12
- package/src/components/page-patterns/index.js +3 -3
- package/src/components/page-patterns/patterns-list.js +7 -7
- package/src/components/page-patterns/rename-menu-item.js +18 -7
- package/src/components/page-patterns/search-items.js +20 -2
- package/src/components/page-patterns/style.scss +1 -5
- package/src/components/page-patterns/use-patterns.js +217 -127
- package/src/components/page-patterns/utils.js +0 -19
- package/src/components/page-template-parts/add-new-template-part.js +5 -2
- package/src/components/page-template-parts/index.js +2 -1
- package/src/components/page-templates/index.js +3 -2
- package/src/components/save-hub/index.js +2 -1
- package/src/components/secondary-sidebar/list-view-sidebar.js +31 -26
- package/src/components/sidebar-edit-mode/page-panels/edit-template.js +94 -52
- package/src/components/sidebar-edit-mode/page-panels/hooks.js +88 -0
- package/src/components/sidebar-edit-mode/page-panels/index.js +0 -4
- package/src/components/sidebar-edit-mode/page-panels/page-summary.js +2 -0
- package/src/components/sidebar-edit-mode/page-panels/reset-default-template.js +44 -0
- package/src/components/sidebar-edit-mode/page-panels/style.scss +46 -9
- package/src/components/sidebar-edit-mode/page-panels/swap-template-button.js +82 -0
- package/src/components/sidebar-edit-mode/settings-header/index.js +4 -7
- package/src/components/sidebar-edit-mode/template-panel/index.js +28 -24
- package/src/components/sidebar-edit-mode/template-panel/last-revision.js +19 -15
- package/src/components/sidebar-edit-mode/template-panel/pattern-categories.js +277 -0
- package/src/components/sidebar-navigation-screen/index.js +4 -9
- package/src/components/sidebar-navigation-screen/style.scss +7 -1
- package/src/components/sidebar-navigation-screen-details-footer/index.js +38 -10
- package/src/components/sidebar-navigation-screen-details-footer/style.scss +10 -3
- package/src/components/sidebar-navigation-screen-details-panel/sidebar-navigation-screen-details-panel-row.js +2 -0
- package/src/components/sidebar-navigation-screen-global-styles/index.js +6 -44
- package/src/components/sidebar-navigation-screen-navigation-menu/edit-button.js +2 -1
- package/src/components/sidebar-navigation-screen-navigation-menu/use-navigation-menu-handlers.js +3 -1
- package/src/components/sidebar-navigation-screen-navigation-menus/index.js +3 -2
- package/src/components/sidebar-navigation-screen-navigation-menus/style.scss +0 -4
- package/src/components/sidebar-navigation-screen-page/index.js +3 -3
- package/src/components/sidebar-navigation-screen-page/page-details.js +2 -1
- package/src/components/sidebar-navigation-screen-pages/index.js +5 -4
- package/src/components/sidebar-navigation-screen-pattern/index.js +22 -8
- package/src/components/sidebar-navigation-screen-pattern/style.scss +0 -3
- package/src/components/sidebar-navigation-screen-pattern/template-part-navigation-menu-list-item.js +8 -2
- package/src/components/sidebar-navigation-screen-pattern/template-part-navigation-menu.js +7 -1
- package/src/components/sidebar-navigation-screen-pattern/use-navigation-menu-content.js +2 -1
- package/src/components/sidebar-navigation-screen-pattern/use-pattern-details.js +63 -20
- package/src/components/sidebar-navigation-screen-patterns/index.js +20 -51
- package/src/components/sidebar-navigation-screen-patterns/use-pattern-categories.js +61 -6
- package/src/components/sidebar-navigation-screen-patterns/use-template-part-areas.js +12 -2
- package/src/components/sidebar-navigation-screen-patterns/use-theme-patterns.js +3 -5
- package/src/components/sidebar-navigation-screen-template/home-template-details.js +2 -1
- package/src/components/sidebar-navigation-screen-template/index.js +2 -4
- package/src/components/sidebar-navigation-screen-templates/index.js +5 -4
- package/src/components/sidebar-navigation-screen-templates-browse/index.js +6 -2
- package/src/components/start-template-options/index.js +39 -2
- package/src/components/sync-state-with-url/use-init-edited-entity-from-url.js +10 -4
- package/src/components/sync-state-with-url/use-sync-path-with-url.js +8 -3
- package/src/components/template-actions/index.js +15 -8
- package/src/components/template-actions/rename-menu-item.js +21 -5
- package/src/components/welcome-guide/styles.js +2 -2
- package/src/hooks/commands/use-edit-mode-commands.js +4 -3
- package/src/hooks/navigation-menu-edit.js +2 -1
- package/src/hooks/push-changes-to-global-styles/index.js +6 -49
- package/src/hooks/template-part-edit.js +2 -1
- package/src/store/actions.js +56 -22
- package/src/store/constants.js +0 -5
- package/src/store/private-actions.js +19 -0
- package/src/store/private-selectors.js +22 -0
- package/src/store/reducer.js +18 -0
- package/src/store/selectors.js +6 -3
- package/src/store/test/reducer.js +18 -0
- package/src/style.scss +1 -1
- package/src/utils/constants.js +54 -3
- package/src/utils/is-template-removable.js +8 -1
- package/src/utils/is-template-revertable.js +8 -1
- package/src/utils/template-part-create.js +6 -1
- package/build/components/block-editor/get-block-editor-provider.js +0 -35
- package/build/components/block-editor/get-block-editor-provider.js.map +0 -1
- package/build/components/block-editor/providers/default-block-editor-provider.js +0 -49
- package/build/components/block-editor/providers/default-block-editor-provider.js.map +0 -1
- package/build/components/block-editor/providers/navigation-block-editor-provider.js.map +0 -1
- package/build/components/sidebar-navigation-screen-patterns/use-my-patterns.js +0 -30
- package/build/components/sidebar-navigation-screen-patterns/use-my-patterns.js.map +0 -1
- package/build-module/components/block-editor/get-block-editor-provider.js +0 -28
- package/build-module/components/block-editor/get-block-editor-provider.js.map +0 -1
- package/build-module/components/block-editor/providers/default-block-editor-provider.js +0 -41
- package/build-module/components/block-editor/providers/default-block-editor-provider.js.map +0 -1
- package/build-module/components/block-editor/providers/navigation-block-editor-provider.js.map +0 -1
- package/build-module/components/sidebar-navigation-screen-patterns/use-my-patterns.js +0 -23
- package/build-module/components/sidebar-navigation-screen-patterns/use-my-patterns.js.map +0 -1
- package/src/components/block-editor/get-block-editor-provider.js +0 -29
- package/src/components/block-editor/providers/default-block-editor-provider.js +0 -44
- package/src/components/sidebar-navigation-screen-global-styles/style.scss +0 -12
- package/src/components/sidebar-navigation-screen-patterns/use-my-patterns.js +0 -24
|
@@ -0,0 +1,174 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* WordPress dependencies
|
|
3
|
+
*/
|
|
4
|
+
import { __ } from '@wordpress/i18n';
|
|
5
|
+
import { useContext, useEffect, useState } from '@wordpress/element';
|
|
6
|
+
import {
|
|
7
|
+
privateApis as componentsPrivateApis,
|
|
8
|
+
__experimentalHStack as HStack,
|
|
9
|
+
__experimentalSpacer as Spacer,
|
|
10
|
+
Button,
|
|
11
|
+
Spinner,
|
|
12
|
+
} from '@wordpress/components';
|
|
13
|
+
|
|
14
|
+
/**
|
|
15
|
+
* Internal dependencies
|
|
16
|
+
*/
|
|
17
|
+
import TabLayout from './tab-layout';
|
|
18
|
+
import { FontLibraryContext } from './context';
|
|
19
|
+
import FontsGrid from './fonts-grid';
|
|
20
|
+
import LibraryFontDetails from './library-font-details';
|
|
21
|
+
import LibraryFontCard from './library-font-card';
|
|
22
|
+
import LocalFonts from './local-fonts';
|
|
23
|
+
import ConfirmDeleteDialog from './confirm-delete-dialog';
|
|
24
|
+
import { unlock } from '../../../lock-unlock';
|
|
25
|
+
const { ProgressBar } = unlock( componentsPrivateApis );
|
|
26
|
+
|
|
27
|
+
function InstalledFonts() {
|
|
28
|
+
const {
|
|
29
|
+
baseCustomFonts,
|
|
30
|
+
libraryFontSelected,
|
|
31
|
+
baseThemeFonts,
|
|
32
|
+
handleSetLibraryFontSelected,
|
|
33
|
+
refreshLibrary,
|
|
34
|
+
uninstallFont,
|
|
35
|
+
isResolvingLibrary,
|
|
36
|
+
} = useContext( FontLibraryContext );
|
|
37
|
+
const [ isConfirmDeleteOpen, setIsConfirmDeleteOpen ] = useState( false );
|
|
38
|
+
|
|
39
|
+
const handleUnselectFont = () => {
|
|
40
|
+
handleSetLibraryFontSelected( null );
|
|
41
|
+
};
|
|
42
|
+
|
|
43
|
+
const handleSelectFont = ( font ) => {
|
|
44
|
+
handleSetLibraryFontSelected( font );
|
|
45
|
+
};
|
|
46
|
+
|
|
47
|
+
const handleConfirmUninstall = async () => {
|
|
48
|
+
const result = await uninstallFont( libraryFontSelected );
|
|
49
|
+
// If the font was succesfully uninstalled it is unselected
|
|
50
|
+
if ( result ) {
|
|
51
|
+
handleUnselectFont();
|
|
52
|
+
}
|
|
53
|
+
setIsConfirmDeleteOpen( false );
|
|
54
|
+
};
|
|
55
|
+
|
|
56
|
+
const handleUninstallClick = async () => {
|
|
57
|
+
setIsConfirmDeleteOpen( true );
|
|
58
|
+
};
|
|
59
|
+
|
|
60
|
+
const handleCancelUninstall = () => {
|
|
61
|
+
setIsConfirmDeleteOpen( false );
|
|
62
|
+
};
|
|
63
|
+
|
|
64
|
+
const tabDescription = !! libraryFontSelected
|
|
65
|
+
? __(
|
|
66
|
+
'Choose font variants. Keep in mind that too many variants could make your site slower.'
|
|
67
|
+
)
|
|
68
|
+
: null;
|
|
69
|
+
|
|
70
|
+
const shouldDisplayDeleteButton =
|
|
71
|
+
!! libraryFontSelected && libraryFontSelected?.source !== 'theme';
|
|
72
|
+
|
|
73
|
+
useEffect( () => {
|
|
74
|
+
refreshLibrary();
|
|
75
|
+
}, [] );
|
|
76
|
+
|
|
77
|
+
return (
|
|
78
|
+
<TabLayout
|
|
79
|
+
title={ libraryFontSelected?.name || '' }
|
|
80
|
+
description={ tabDescription }
|
|
81
|
+
handleBack={ !! libraryFontSelected && handleUnselectFont }
|
|
82
|
+
footer={
|
|
83
|
+
<Footer
|
|
84
|
+
shouldDisplayDeleteButton={ shouldDisplayDeleteButton }
|
|
85
|
+
handleUninstallClick={ handleUninstallClick }
|
|
86
|
+
/>
|
|
87
|
+
}
|
|
88
|
+
>
|
|
89
|
+
<ConfirmDeleteDialog
|
|
90
|
+
font={ libraryFontSelected }
|
|
91
|
+
isConfirmDeleteOpen={ isConfirmDeleteOpen }
|
|
92
|
+
handleConfirmUninstall={ handleConfirmUninstall }
|
|
93
|
+
handleCancelUninstall={ handleCancelUninstall }
|
|
94
|
+
/>
|
|
95
|
+
|
|
96
|
+
{ ! libraryFontSelected && (
|
|
97
|
+
<>
|
|
98
|
+
{ isResolvingLibrary && <Spinner /> }
|
|
99
|
+
{ baseCustomFonts.length > 0 && (
|
|
100
|
+
<>
|
|
101
|
+
<Spacer margin={ 2 } />
|
|
102
|
+
<FontsGrid>
|
|
103
|
+
{ baseCustomFonts.map( ( font ) => (
|
|
104
|
+
<LibraryFontCard
|
|
105
|
+
font={ font }
|
|
106
|
+
key={ font.slug }
|
|
107
|
+
onClick={ () => {
|
|
108
|
+
handleSelectFont( font );
|
|
109
|
+
} }
|
|
110
|
+
/>
|
|
111
|
+
) ) }
|
|
112
|
+
</FontsGrid>
|
|
113
|
+
<Spacer margin={ 8 } />
|
|
114
|
+
</>
|
|
115
|
+
) }
|
|
116
|
+
|
|
117
|
+
{ baseThemeFonts.length > 0 && (
|
|
118
|
+
<>
|
|
119
|
+
<FontsGrid title={ __( 'Theme Fonts' ) }>
|
|
120
|
+
{ baseThemeFonts.map( ( font ) => (
|
|
121
|
+
<LibraryFontCard
|
|
122
|
+
font={ font }
|
|
123
|
+
key={ font.slug }
|
|
124
|
+
onClick={ () => {
|
|
125
|
+
handleSelectFont( font );
|
|
126
|
+
} }
|
|
127
|
+
/>
|
|
128
|
+
) ) }
|
|
129
|
+
</FontsGrid>
|
|
130
|
+
</>
|
|
131
|
+
) }
|
|
132
|
+
|
|
133
|
+
<Spacer margin={ 8 } />
|
|
134
|
+
<LocalFonts />
|
|
135
|
+
</>
|
|
136
|
+
) }
|
|
137
|
+
|
|
138
|
+
{ libraryFontSelected && (
|
|
139
|
+
<LibraryFontDetails
|
|
140
|
+
font={ libraryFontSelected }
|
|
141
|
+
isConfirmDeleteOpen={ isConfirmDeleteOpen }
|
|
142
|
+
handleConfirmUninstall={ handleConfirmUninstall }
|
|
143
|
+
handleCancelUninstall={ handleCancelUninstall }
|
|
144
|
+
/>
|
|
145
|
+
) }
|
|
146
|
+
</TabLayout>
|
|
147
|
+
);
|
|
148
|
+
}
|
|
149
|
+
|
|
150
|
+
function Footer( { shouldDisplayDeleteButton, handleUninstallClick } ) {
|
|
151
|
+
const { saveFontFamilies, fontFamiliesHasChanges, isInstalling } =
|
|
152
|
+
useContext( FontLibraryContext );
|
|
153
|
+
return (
|
|
154
|
+
<HStack justify="space-between">
|
|
155
|
+
{ isInstalling && <ProgressBar /> }
|
|
156
|
+
<div>
|
|
157
|
+
{ shouldDisplayDeleteButton && (
|
|
158
|
+
<Button variant="tertiary" onClick={ handleUninstallClick }>
|
|
159
|
+
{ __( 'Delete' ) }
|
|
160
|
+
</Button>
|
|
161
|
+
) }
|
|
162
|
+
</div>
|
|
163
|
+
<Button
|
|
164
|
+
disabled={ ! fontFamiliesHasChanges }
|
|
165
|
+
variant="primary"
|
|
166
|
+
onClick={ saveFontFamilies }
|
|
167
|
+
>
|
|
168
|
+
{ __( 'Update' ) }
|
|
169
|
+
</Button>
|
|
170
|
+
</HStack>
|
|
171
|
+
);
|
|
172
|
+
}
|
|
173
|
+
|
|
174
|
+
export default InstalledFonts;
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* WordPress dependencies
|
|
3
|
+
*/
|
|
4
|
+
import { __, sprintf } from '@wordpress/i18n';
|
|
5
|
+
import { useContext } from '@wordpress/element';
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* Internal dependencies
|
|
9
|
+
*/
|
|
10
|
+
import FontCard from './font-card';
|
|
11
|
+
import { FontLibraryContext } from './context';
|
|
12
|
+
|
|
13
|
+
function LibraryFontCard( { font, ...props } ) {
|
|
14
|
+
const { getFontFacesActivated } = useContext( FontLibraryContext );
|
|
15
|
+
|
|
16
|
+
const variantsInstalled = font.fontFace?.length || 1;
|
|
17
|
+
const variantsActive = getFontFacesActivated(
|
|
18
|
+
font.slug,
|
|
19
|
+
font.source
|
|
20
|
+
).length;
|
|
21
|
+
const variantsText = sprintf(
|
|
22
|
+
/* translators: %1$d: Active font variants, %2$d: Total font variants */
|
|
23
|
+
__( '%1$s/%2$s variants active' ),
|
|
24
|
+
variantsActive,
|
|
25
|
+
variantsInstalled
|
|
26
|
+
);
|
|
27
|
+
|
|
28
|
+
return (
|
|
29
|
+
<FontCard font={ font } variantsText={ variantsText } { ...props } />
|
|
30
|
+
);
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
export default LibraryFontCard;
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* WordPress dependencies
|
|
3
|
+
*/
|
|
4
|
+
import {
|
|
5
|
+
__experimentalVStack as VStack,
|
|
6
|
+
__experimentalSpacer as Spacer,
|
|
7
|
+
} from '@wordpress/components';
|
|
8
|
+
|
|
9
|
+
/**
|
|
10
|
+
* Internal dependencies
|
|
11
|
+
*/
|
|
12
|
+
import LibraryFontVariant from './library-font-variant';
|
|
13
|
+
import { sortFontFaces } from './utils/sort-font-faces';
|
|
14
|
+
|
|
15
|
+
function LibraryFontDetails( { font } ) {
|
|
16
|
+
const fontFaces =
|
|
17
|
+
font.fontFace && font.fontFace.length
|
|
18
|
+
? sortFontFaces( font.fontFace )
|
|
19
|
+
: [
|
|
20
|
+
{
|
|
21
|
+
fontFamily: font.fontFamily,
|
|
22
|
+
fontStyle: 'normal',
|
|
23
|
+
fontWeight: '400',
|
|
24
|
+
},
|
|
25
|
+
];
|
|
26
|
+
|
|
27
|
+
return (
|
|
28
|
+
<>
|
|
29
|
+
<Spacer margin={ 4 } />
|
|
30
|
+
<VStack spacing={ 0 }>
|
|
31
|
+
<Spacer margin={ 8 } />
|
|
32
|
+
{ fontFaces.map( ( face, i ) => (
|
|
33
|
+
<LibraryFontVariant
|
|
34
|
+
font={ font }
|
|
35
|
+
face={ face }
|
|
36
|
+
key={ `face${ i }` }
|
|
37
|
+
/>
|
|
38
|
+
) ) }
|
|
39
|
+
</VStack>
|
|
40
|
+
<Spacer margin={ 8 } />
|
|
41
|
+
</>
|
|
42
|
+
);
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
export default LibraryFontDetails;
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* WordPress dependencies
|
|
3
|
+
*/
|
|
4
|
+
import { useContext } from '@wordpress/element';
|
|
5
|
+
import { CheckboxControl, Flex } from '@wordpress/components';
|
|
6
|
+
/**
|
|
7
|
+
* Internal dependencies
|
|
8
|
+
*/
|
|
9
|
+
import { getFontFaceVariantName } from './utils';
|
|
10
|
+
|
|
11
|
+
/**
|
|
12
|
+
* Internal dependencies
|
|
13
|
+
*/
|
|
14
|
+
import { FontLibraryContext } from './context';
|
|
15
|
+
import FontFaceDemo from './font-demo';
|
|
16
|
+
|
|
17
|
+
function LibraryFontVariant( { face, font } ) {
|
|
18
|
+
const { isFontActivated, toggleActivateFont } =
|
|
19
|
+
useContext( FontLibraryContext );
|
|
20
|
+
|
|
21
|
+
const isIstalled = font?.fontFace
|
|
22
|
+
? isFontActivated(
|
|
23
|
+
font.slug,
|
|
24
|
+
face.fontStyle,
|
|
25
|
+
face.fontWeight,
|
|
26
|
+
font.source
|
|
27
|
+
)
|
|
28
|
+
: isFontActivated( font.slug, null, null, font.source );
|
|
29
|
+
|
|
30
|
+
const handleToggleActivation = () => {
|
|
31
|
+
if ( font?.fontFace ) {
|
|
32
|
+
toggleActivateFont( font, face );
|
|
33
|
+
return;
|
|
34
|
+
}
|
|
35
|
+
toggleActivateFont( font );
|
|
36
|
+
};
|
|
37
|
+
|
|
38
|
+
const displayName = font.name + ' ' + getFontFaceVariantName( face );
|
|
39
|
+
|
|
40
|
+
return (
|
|
41
|
+
<div className="font-library-modal__library-font-variant">
|
|
42
|
+
<Flex justify="space-between" align="center" gap="1rem">
|
|
43
|
+
<FontFaceDemo fontFace={ face } text={ displayName } />
|
|
44
|
+
<CheckboxControl
|
|
45
|
+
checked={ isIstalled }
|
|
46
|
+
onChange={ handleToggleActivation }
|
|
47
|
+
__nextHasNoMarginBottom={ true }
|
|
48
|
+
/>
|
|
49
|
+
</Flex>
|
|
50
|
+
</div>
|
|
51
|
+
);
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
export default LibraryFontVariant;
|
|
@@ -0,0 +1,160 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* WordPress dependencies
|
|
3
|
+
*/
|
|
4
|
+
import { __ } from '@wordpress/i18n';
|
|
5
|
+
import {
|
|
6
|
+
Button,
|
|
7
|
+
DropZone,
|
|
8
|
+
__experimentalSpacer as Spacer,
|
|
9
|
+
__experimentalText as Text,
|
|
10
|
+
FormFileUpload,
|
|
11
|
+
} from '@wordpress/components';
|
|
12
|
+
import { useContext } from '@wordpress/element';
|
|
13
|
+
|
|
14
|
+
/**
|
|
15
|
+
* Internal dependencies
|
|
16
|
+
*/
|
|
17
|
+
import { ALLOWED_FILE_EXTENSIONS } from './utils/constants';
|
|
18
|
+
import { FontLibraryContext } from './context';
|
|
19
|
+
import { Font } from '../../../../lib/lib-font.browser';
|
|
20
|
+
import makeFamiliesFromFaces from './utils/make-families-from-faces';
|
|
21
|
+
import { loadFontFaceInBrowser } from './utils';
|
|
22
|
+
|
|
23
|
+
function LocalFonts() {
|
|
24
|
+
const { installFonts } = useContext( FontLibraryContext );
|
|
25
|
+
|
|
26
|
+
const handleDropZone = ( files ) => {
|
|
27
|
+
handleFilesUpload( files );
|
|
28
|
+
};
|
|
29
|
+
const onFilesUpload = ( event ) => {
|
|
30
|
+
handleFilesUpload( event.target.files );
|
|
31
|
+
};
|
|
32
|
+
|
|
33
|
+
/**
|
|
34
|
+
* Filters the selected files to only allow the ones with the allowed extensions
|
|
35
|
+
*
|
|
36
|
+
* @param {Array} files The files to be filtered
|
|
37
|
+
* @return {void}
|
|
38
|
+
*/
|
|
39
|
+
const handleFilesUpload = ( files ) => {
|
|
40
|
+
const uniqueFilenames = new Set();
|
|
41
|
+
const selectedFiles = [ ...files ];
|
|
42
|
+
const allowedFiles = selectedFiles.filter( ( file ) => {
|
|
43
|
+
if ( uniqueFilenames.has( file.name ) ) {
|
|
44
|
+
return false; // Discard duplicates
|
|
45
|
+
}
|
|
46
|
+
// Eliminates files that are not allowed
|
|
47
|
+
const fileExtension = file.name.split( '.' ).pop().toLowerCase();
|
|
48
|
+
if ( ALLOWED_FILE_EXTENSIONS.includes( fileExtension ) ) {
|
|
49
|
+
uniqueFilenames.add( file.name );
|
|
50
|
+
return true; // Keep file if the extension is allowed
|
|
51
|
+
}
|
|
52
|
+
return false; // Discard file extension not allowed
|
|
53
|
+
} );
|
|
54
|
+
if ( allowedFiles.length > 0 ) {
|
|
55
|
+
loadFiles( allowedFiles );
|
|
56
|
+
}
|
|
57
|
+
};
|
|
58
|
+
|
|
59
|
+
/**
|
|
60
|
+
* Loads the selected files and reads the font metadata
|
|
61
|
+
*
|
|
62
|
+
* @param {Array} files The files to be loaded
|
|
63
|
+
* @return {void}
|
|
64
|
+
*/
|
|
65
|
+
const loadFiles = async ( files ) => {
|
|
66
|
+
const fontFacesLoaded = await Promise.all(
|
|
67
|
+
files.map( async ( fontFile ) => {
|
|
68
|
+
const fontFaceData = await getFontFaceMetadata( fontFile );
|
|
69
|
+
await loadFontFaceInBrowser(
|
|
70
|
+
fontFaceData,
|
|
71
|
+
fontFaceData.file,
|
|
72
|
+
'all'
|
|
73
|
+
);
|
|
74
|
+
return fontFaceData;
|
|
75
|
+
} )
|
|
76
|
+
);
|
|
77
|
+
await handleInstall( fontFacesLoaded );
|
|
78
|
+
};
|
|
79
|
+
|
|
80
|
+
// Create a function to read the file as array buffer
|
|
81
|
+
async function readFileAsArrayBuffer( file ) {
|
|
82
|
+
return new Promise( ( resolve, reject ) => {
|
|
83
|
+
const reader = new window.FileReader();
|
|
84
|
+
reader.readAsArrayBuffer( file );
|
|
85
|
+
reader.onload = () => resolve( reader.result );
|
|
86
|
+
reader.onerror = reject;
|
|
87
|
+
} );
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
const getFontFaceMetadata = async ( fontFile ) => {
|
|
91
|
+
const buffer = await readFileAsArrayBuffer( fontFile );
|
|
92
|
+
const fontObj = new Font( 'Uploaded Font' );
|
|
93
|
+
fontObj.fromDataBuffer( buffer, fontFile.name );
|
|
94
|
+
// Assuming that fromDataBuffer triggers onload event and returning a Promise
|
|
95
|
+
const onloadEvent = await new Promise(
|
|
96
|
+
( resolve ) => ( fontObj.onload = resolve )
|
|
97
|
+
);
|
|
98
|
+
const font = onloadEvent.detail.font;
|
|
99
|
+
const { name } = font.opentype.tables;
|
|
100
|
+
const fontName = name.get( 16 ) || name.get( 1 );
|
|
101
|
+
const isItalic = name.get( 2 ).toLowerCase().includes( 'italic' );
|
|
102
|
+
const fontWeight =
|
|
103
|
+
font.opentype.tables[ 'OS/2' ].usWeightClass || 'normal';
|
|
104
|
+
const isVariable = !! font.opentype.tables.fvar;
|
|
105
|
+
const weightAxis =
|
|
106
|
+
isVariable &&
|
|
107
|
+
font.opentype.tables.fvar.axes.find(
|
|
108
|
+
( { tag } ) => tag === 'wght'
|
|
109
|
+
);
|
|
110
|
+
const weightRange = weightAxis
|
|
111
|
+
? `${ weightAxis.minValue } ${ weightAxis.maxValue }`
|
|
112
|
+
: null;
|
|
113
|
+
return {
|
|
114
|
+
file: fontFile,
|
|
115
|
+
fontFamily: fontName,
|
|
116
|
+
fontStyle: isItalic ? 'italic' : 'normal',
|
|
117
|
+
fontWeight: weightRange || fontWeight,
|
|
118
|
+
};
|
|
119
|
+
};
|
|
120
|
+
|
|
121
|
+
/**
|
|
122
|
+
* Creates the font family definition and sends it to the server
|
|
123
|
+
*
|
|
124
|
+
* @param {Array} fontFaces The font faces to be installed
|
|
125
|
+
* @return {void}
|
|
126
|
+
*/
|
|
127
|
+
const handleInstall = async ( fontFaces ) => {
|
|
128
|
+
const fontFamilies = makeFamiliesFromFaces( fontFaces );
|
|
129
|
+
await installFonts( fontFamilies );
|
|
130
|
+
};
|
|
131
|
+
|
|
132
|
+
return (
|
|
133
|
+
<>
|
|
134
|
+
<Text className="font-library-modal__subtitle">
|
|
135
|
+
{ __( 'Upload Fonts' ) }
|
|
136
|
+
</Text>
|
|
137
|
+
<Spacer margin={ 2 } />
|
|
138
|
+
<DropZone onFilesDrop={ handleDropZone } />
|
|
139
|
+
<FormFileUpload
|
|
140
|
+
accept={ ALLOWED_FILE_EXTENSIONS.map(
|
|
141
|
+
( ext ) => `.${ ext }`
|
|
142
|
+
).join( ',' ) }
|
|
143
|
+
multiple={ true }
|
|
144
|
+
onChange={ onFilesUpload }
|
|
145
|
+
render={ ( { openFileDialog } ) => (
|
|
146
|
+
<Button
|
|
147
|
+
className="font-library-modal__upload-area"
|
|
148
|
+
onClick={ openFileDialog }
|
|
149
|
+
>
|
|
150
|
+
<span>
|
|
151
|
+
{ __( 'Drag and drop your font files here.' ) }
|
|
152
|
+
</span>
|
|
153
|
+
</Button>
|
|
154
|
+
) }
|
|
155
|
+
/>
|
|
156
|
+
</>
|
|
157
|
+
);
|
|
158
|
+
}
|
|
159
|
+
|
|
160
|
+
export default LocalFonts;
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* WordPress dependencies
|
|
3
|
+
*
|
|
4
|
+
*/
|
|
5
|
+
/**
|
|
6
|
+
* WordPress dependencies
|
|
7
|
+
*/
|
|
8
|
+
import apiFetch from '@wordpress/api-fetch';
|
|
9
|
+
|
|
10
|
+
export async function fetchInstallFonts( data ) {
|
|
11
|
+
const config = {
|
|
12
|
+
path: '/wp/v2/fonts',
|
|
13
|
+
method: 'POST',
|
|
14
|
+
body: data,
|
|
15
|
+
};
|
|
16
|
+
return apiFetch( config );
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
export async function fetchUninstallFonts( fonts ) {
|
|
20
|
+
const data = {
|
|
21
|
+
fontFamilies: fonts,
|
|
22
|
+
};
|
|
23
|
+
const config = {
|
|
24
|
+
path: '/wp/v2/fonts',
|
|
25
|
+
method: 'DELETE',
|
|
26
|
+
data,
|
|
27
|
+
};
|
|
28
|
+
return apiFetch( config );
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
export async function fetchFontCollections() {
|
|
32
|
+
const config = {
|
|
33
|
+
path: '/wp/v2/fonts/collections',
|
|
34
|
+
method: 'GET',
|
|
35
|
+
};
|
|
36
|
+
return apiFetch( config );
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
export async function fetchFontCollection( id ) {
|
|
40
|
+
const config = {
|
|
41
|
+
path: `/wp/v2/fonts/collections/${ id }`,
|
|
42
|
+
method: 'GET',
|
|
43
|
+
};
|
|
44
|
+
return apiFetch( config );
|
|
45
|
+
}
|
|
@@ -0,0 +1,139 @@
|
|
|
1
|
+
.font-library-modal {
|
|
2
|
+
// @todo: If a new prop is added to the Modal component that constrains
|
|
3
|
+
// the content width, we should use that prop instead of this style.
|
|
4
|
+
// see https://github.com/WordPress/gutenberg/issues/54471.
|
|
5
|
+
&.font-library-modal {
|
|
6
|
+
|
|
7
|
+
@include break-medium() {
|
|
8
|
+
width: 65vw;
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
.components-modal__header {
|
|
13
|
+
border-bottom: none;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
.components-modal__content {
|
|
17
|
+
padding-top: 0;
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
.font-library-modal__subtitle {
|
|
21
|
+
text-transform: uppercase;
|
|
22
|
+
font-weight: 500;
|
|
23
|
+
font-size: 11px;
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
.font-library-modal__tab-layout {
|
|
28
|
+
|
|
29
|
+
main {
|
|
30
|
+
padding-bottom: 4rem;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
footer {
|
|
34
|
+
border-top: 1px solid #e5e5e5;
|
|
35
|
+
margin: 0 -32px -32px;
|
|
36
|
+
padding: 16px 32px;
|
|
37
|
+
position: absolute;
|
|
38
|
+
bottom: 32px;
|
|
39
|
+
width: 100%;
|
|
40
|
+
background-color: #fff;
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
.font-library-modal__fonts-grid {
|
|
46
|
+
.font-library-modal__fonts-grid__main {
|
|
47
|
+
display: flex;
|
|
48
|
+
flex-direction: column;
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
.font-library-modal__font-card {
|
|
53
|
+
border: 1px solid #e5e5e5;
|
|
54
|
+
height: auto;
|
|
55
|
+
padding: 1rem;
|
|
56
|
+
margin-top: -1px; /* To collapse the margin with the previous element */
|
|
57
|
+
|
|
58
|
+
.font-library-modal__font-card__name {
|
|
59
|
+
font-weight: bold;
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
.font-library-modal__font-card__count {
|
|
63
|
+
color: #6e6e6e;
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
.font-library-modal__library-font-variant {
|
|
68
|
+
border: 1px solid #e5e5e5;
|
|
69
|
+
padding: 1rem;
|
|
70
|
+
margin-top: -1px; /* To collapse the margin with the previous element */
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
.font-library-modal__font-variant {
|
|
74
|
+
border-bottom: 1px solid #e5e5e5;
|
|
75
|
+
padding-bottom: 1rem;
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
.font-library-modal__tab-panel {
|
|
79
|
+
[role="tablist"] {
|
|
80
|
+
position: sticky;
|
|
81
|
+
top: 0;
|
|
82
|
+
width: calc(100% + 64px);
|
|
83
|
+
border-bottom: 1px solid #e6e6e6;
|
|
84
|
+
background: #fff;
|
|
85
|
+
margin: 0 -32px;
|
|
86
|
+
padding: 0 16px;
|
|
87
|
+
z-index: 1;
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
.font-library-modal__upload-area {
|
|
92
|
+
align-items: center;
|
|
93
|
+
display: flex;
|
|
94
|
+
justify-content: center;
|
|
95
|
+
height: 100px;
|
|
96
|
+
width: 100%;
|
|
97
|
+
background-color: #f0f0f0;
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
.font-library-modal__font-name {
|
|
101
|
+
font-weight: bold;
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
.font-library-modal__font-filename {
|
|
105
|
+
color: #6e6e6e;
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
.font-library-modal__font-variant_demo-wrapper {
|
|
109
|
+
white-space: nowrap;
|
|
110
|
+
overflow: hidden;
|
|
111
|
+
width: 100%;
|
|
112
|
+
position: relative;
|
|
113
|
+
|
|
114
|
+
&::after {
|
|
115
|
+
content: "";
|
|
116
|
+
position: absolute;
|
|
117
|
+
bottom: 0;
|
|
118
|
+
right: 0;
|
|
119
|
+
width: 30vw;
|
|
120
|
+
height: 100%;
|
|
121
|
+
background: linear-gradient(to right, rgba(255, 255, 255, 0), rgba(255, 255, 255, 1));
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
.font-library__google-fonts-confirm {
|
|
126
|
+
display: flex;
|
|
127
|
+
justify-content: center;
|
|
128
|
+
align-items: center;
|
|
129
|
+
|
|
130
|
+
h3 {
|
|
131
|
+
font-size: 1.4rem;
|
|
132
|
+
}
|
|
133
|
+
|
|
134
|
+
.components-card {
|
|
135
|
+
width: 50%;
|
|
136
|
+
min-width: 250px;
|
|
137
|
+
max-width: 350px;
|
|
138
|
+
}
|
|
139
|
+
}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* WordPress dependencies
|
|
3
|
+
*/
|
|
4
|
+
import {
|
|
5
|
+
__experimentalText as Text,
|
|
6
|
+
__experimentalHeading as Heading,
|
|
7
|
+
__experimentalVStack as VStack,
|
|
8
|
+
__experimentalSpacer as Spacer,
|
|
9
|
+
__experimentalHStack as HStack,
|
|
10
|
+
Button,
|
|
11
|
+
} from '@wordpress/components';
|
|
12
|
+
import { chevronLeft } from '@wordpress/icons';
|
|
13
|
+
|
|
14
|
+
function TabLayout( { title, description, handleBack, children, footer } ) {
|
|
15
|
+
return (
|
|
16
|
+
<div className="font-library-modal__tab-layout">
|
|
17
|
+
<Spacer margin={ 4 } />
|
|
18
|
+
<VStack spacing={ 4 } justify="space-between">
|
|
19
|
+
<header>
|
|
20
|
+
<VStack spacing={ 2 }>
|
|
21
|
+
<HStack justify="flex-start">
|
|
22
|
+
{ !! handleBack && (
|
|
23
|
+
<Button
|
|
24
|
+
variant="tertiary"
|
|
25
|
+
onClick={ handleBack }
|
|
26
|
+
icon={ chevronLeft }
|
|
27
|
+
size="small"
|
|
28
|
+
/>
|
|
29
|
+
) }
|
|
30
|
+
{ title && (
|
|
31
|
+
<Heading
|
|
32
|
+
level={ 2 }
|
|
33
|
+
size={ 13 }
|
|
34
|
+
className="edit-site-global-styles-header"
|
|
35
|
+
>
|
|
36
|
+
{ title }
|
|
37
|
+
</Heading>
|
|
38
|
+
) }
|
|
39
|
+
</HStack>
|
|
40
|
+
{ description && <Text>{ description }</Text> }
|
|
41
|
+
</VStack>
|
|
42
|
+
</header>
|
|
43
|
+
<main>{ children }</main>
|
|
44
|
+
{ footer && <footer>{ footer }</footer> }
|
|
45
|
+
</VStack>
|
|
46
|
+
</div>
|
|
47
|
+
);
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
export default TabLayout;
|