@wordpress/edit-site 5.19.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/build/components/add-new-pattern/index.js +3 -3
- package/build/components/add-new-pattern/index.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/index.js +2 -9
- package/build/components/block-editor/index.js.map +1 -1
- package/build/components/block-editor/site-editor-canvas.js +1 -1
- package/build/components/block-editor/site-editor-canvas.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 +4 -1
- package/build/components/editor/index.js.map +1 -1
- package/build/components/global-styles/font-family-item.js +2 -2
- package/build/components/global-styles/font-family-item.js.map +1 -1
- 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/context.js +26 -2
- package/build/components/global-styles/font-library-modal/context.js.map +1 -1
- package/build/components/global-styles/font-library-modal/font-card.js +7 -4
- package/build/components/global-styles/font-library-modal/font-card.js.map +1 -1
- 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 +30 -13
- package/build/components/global-styles/font-library-modal/font-demo.js.map +1 -1
- 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 +25 -7
- package/build/components/global-styles/font-library-modal/index.js.map +1 -1
- package/build/components/global-styles/font-library-modal/installed-fonts.js +2 -2
- package/build/components/global-styles/font-library-modal/installed-fonts.js.map +1 -1
- package/build/components/global-styles/font-library-modal/library-font-card.js +0 -5
- package/build/components/global-styles/font-library-modal/library-font-card.js.map +1 -1
- package/build/components/global-styles/font-library-modal/library-font-details.js +2 -1
- package/build/components/global-styles/font-library-modal/library-font-details.js.map +1 -1
- package/build/components/global-styles/font-library-modal/resolvers.js +16 -0
- package/build/components/global-styles/font-library-modal/resolvers.js.map +1 -1
- package/build/components/global-styles/font-library-modal/tab-layout.js +2 -2
- package/build/components/global-styles/font-library-modal/tab-layout.js.map +1 -1
- package/build/components/global-styles/font-library-modal/utils/constants.js +1 -7
- package/build/components/global-styles/font-library-modal/utils/constants.js.map +1 -1
- 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/index.js +2 -52
- package/build/components/global-styles/font-library-modal/utils/index.js.map +1 -1
- 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/screen-typography.js +1 -1
- package/build/components/global-styles/screen-typography.js.map +1 -1
- 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 +5 -5
- package/build/components/page-patterns/duplicate-menu-item.js.map +1 -1
- package/build/components/page-patterns/grid-item.js +5 -5
- package/build/components/page-patterns/grid-item.js.map +1 -1
- package/build/components/page-patterns/index.js +1 -1
- package/build/components/page-patterns/index.js.map +1 -1
- package/build/components/page-patterns/search-items.js +1 -1
- package/build/components/page-patterns/search-items.js.map +1 -1
- package/build/components/page-patterns/use-patterns.js +28 -34
- package/build/components/page-patterns/use-patterns.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 +21 -3
- package/build/components/sidebar-edit-mode/page-panels/edit-template.js.map +1 -1
- package/build/components/sidebar-edit-mode/page-panels/hooks.js +2 -1
- package/build/components/sidebar-edit-mode/page-panels/hooks.js.map +1 -1
- 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/pattern-categories.js +9 -2
- package/build/components/sidebar-edit-mode/template-panel/pattern-categories.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/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 +2 -1
- 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 +8 -7
- package/build/components/sidebar-navigation-screen-pattern/use-pattern-details.js.map +1 -1
- package/build/components/sidebar-navigation-screen-patterns/index.js +3 -3
- package/build/components/sidebar-navigation-screen-patterns/index.js.map +1 -1
- package/build/components/sidebar-navigation-screen-patterns/use-pattern-categories.js +7 -2
- 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-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-templates/index.js +4 -3
- 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 +2 -1
- package/build/components/template-actions/index.js.map +1 -1
- package/build/components/template-actions/rename-menu-item.js +8 -3
- package/build/components/template-actions/rename-menu-item.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/template-part-edit.js +2 -1
- package/build/hooks/template-part-edit.js.map +1 -1
- package/build/store/actions.js +10 -9
- 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 +22 -3
- package/build/utils/constants.js.map +1 -1
- package/build/utils/is-template-removable.js +1 -1
- package/build/utils/is-template-removable.js.map +1 -1
- package/build/utils/is-template-revertable.js +1 -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 +3 -3
- package/build-module/components/add-new-pattern/index.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/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 +2 -2
- package/build-module/components/block-editor/site-editor-canvas.js.map +1 -1
- package/build-module/components/create-template-part-modal/index.js +8 -12
- package/build-module/components/create-template-part-modal/index.js.map +1 -1
- package/build-module/components/editor/index.js +4 -1
- package/build-module/components/editor/index.js.map +1 -1
- package/build-module/components/global-styles/font-family-item.js +2 -2
- package/build-module/components/global-styles/font-family-item.js.map +1 -1
- 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/context.js +27 -3
- package/build-module/components/global-styles/font-library-modal/context.js.map +1 -1
- package/build-module/components/global-styles/font-library-modal/font-card.js +8 -5
- package/build-module/components/global-styles/font-library-modal/font-card.js.map +1 -1
- 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 +30 -13
- package/build-module/components/global-styles/font-library-modal/font-demo.js.map +1 -1
- 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 +26 -7
- package/build-module/components/global-styles/font-library-modal/index.js.map +1 -1
- package/build-module/components/global-styles/font-library-modal/installed-fonts.js +2 -2
- package/build-module/components/global-styles/font-library-modal/installed-fonts.js.map +1 -1
- package/build-module/components/global-styles/font-library-modal/library-font-card.js +0 -5
- package/build-module/components/global-styles/font-library-modal/library-font-card.js.map +1 -1
- package/build-module/components/global-styles/font-library-modal/library-font-details.js +2 -1
- package/build-module/components/global-styles/font-library-modal/library-font-details.js.map +1 -1
- package/build-module/components/global-styles/font-library-modal/resolvers.js +14 -0
- package/build-module/components/global-styles/font-library-modal/resolvers.js.map +1 -1
- package/build-module/components/global-styles/font-library-modal/tab-layout.js +2 -2
- package/build-module/components/global-styles/font-library-modal/tab-layout.js.map +1 -1
- package/build-module/components/global-styles/font-library-modal/utils/constants.js +1 -6
- package/build-module/components/global-styles/font-library-modal/utils/constants.js.map +1 -1
- 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/index.js +2 -51
- package/build-module/components/global-styles/font-library-modal/utils/index.js.map +1 -1
- 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/screen-typography.js +1 -1
- package/build-module/components/global-styles/screen-typography.js.map +1 -1
- 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 +5 -5
- package/build-module/components/page-patterns/duplicate-menu-item.js.map +1 -1
- package/build-module/components/page-patterns/grid-item.js +5 -5
- package/build-module/components/page-patterns/grid-item.js.map +1 -1
- package/build-module/components/page-patterns/index.js +1 -1
- package/build-module/components/page-patterns/index.js.map +1 -1
- package/build-module/components/page-patterns/search-items.js +2 -2
- package/build-module/components/page-patterns/search-items.js.map +1 -1
- package/build-module/components/page-patterns/use-patterns.js +28 -35
- package/build-module/components/page-patterns/use-patterns.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 +21 -3
- 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 +2 -1
- package/build-module/components/sidebar-edit-mode/page-panels/hooks.js.map +1 -1
- 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/pattern-categories.js +9 -2
- package/build-module/components/sidebar-edit-mode/template-panel/pattern-categories.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/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 +2 -1
- 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 +8 -7
- 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 +4 -4
- 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 +8 -3
- 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-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-templates/index.js +4 -3
- 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 +2 -1
- package/build-module/components/template-actions/index.js.map +1 -1
- package/build-module/components/template-actions/rename-menu-item.js +8 -3
- package/build-module/components/template-actions/rename-menu-item.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/template-part-edit.js +2 -1
- package/build-module/hooks/template-part-edit.js.map +1 -1
- package/build-module/store/actions.js +10 -10
- 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 +17 -1
- package/build-module/utils/constants.js.map +1 -1
- package/build-module/utils/is-template-removable.js +2 -2
- package/build-module/utils/is-template-removable.js.map +1 -1
- package/build-module/utils/is-template-revertable.js +2 -2
- 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 +23 -0
- package/build-style/style.css +23 -0
- package/package.json +40 -40
- package/src/components/add-new-pattern/index.js +3 -3
- 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/index.js +1 -14
- package/src/components/block-editor/site-editor-canvas.js +5 -2
- package/src/components/create-template-part-modal/index.js +11 -12
- package/src/components/editor/index.js +6 -2
- package/src/components/global-styles/font-family-item.js +2 -2
- 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/context.js +33 -2
- package/src/components/global-styles/font-library-modal/font-card.js +9 -4
- package/src/components/global-styles/font-library-modal/font-collection.js +257 -0
- package/src/components/global-styles/font-library-modal/font-demo.js +36 -10
- 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 +30 -5
- package/src/components/global-styles/font-library-modal/installed-fonts.js +1 -1
- package/src/components/global-styles/font-library-modal/library-font-card.js +1 -8
- package/src/components/global-styles/font-library-modal/library-font-details.js +2 -3
- package/src/components/global-styles/font-library-modal/resolvers.js +16 -0
- package/src/components/global-styles/font-library-modal/style.scss +26 -0
- package/src/components/global-styles/font-library-modal/tab-layout.js +2 -2
- package/src/components/global-styles/font-library-modal/utils/constants.js +1 -9
- 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/index.js +9 -69
- 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/{getPreviewStyle.spec.js → preview-styles.spec.js} +49 -9
- package/src/components/global-styles/font-library-modal/utils/test/sort-font-faces.js +74 -0
- package/src/components/global-styles/screen-typography.js +3 -1
- 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/page-content-focus-manager/disable-non-page-content-blocks.js +2 -8
- package/src/components/page-patterns/duplicate-menu-item.js +5 -5
- package/src/components/page-patterns/grid-item.js +5 -5
- package/src/components/page-patterns/index.js +1 -1
- package/src/components/page-patterns/search-items.js +7 -1
- package/src/components/page-patterns/use-patterns.js +190 -134
- 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 +48 -20
- package/src/components/sidebar-edit-mode/page-panels/hooks.js +9 -4
- package/src/components/sidebar-edit-mode/page-panels/style.scss +6 -0
- package/src/components/sidebar-edit-mode/settings-header/index.js +4 -7
- package/src/components/sidebar-edit-mode/template-panel/pattern-categories.js +9 -2
- 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-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 +2 -1
- 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 +18 -8
- package/src/components/sidebar-navigation-screen-patterns/index.js +8 -4
- package/src/components/sidebar-navigation-screen-patterns/use-pattern-categories.js +16 -3
- package/src/components/sidebar-navigation-screen-patterns/use-template-part-areas.js +12 -2
- package/src/components/sidebar-navigation-screen-template/home-template-details.js +2 -1
- package/src/components/sidebar-navigation-screen-templates/index.js +4 -3
- 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 +2 -1
- package/src/components/template-actions/rename-menu-item.js +8 -3
- package/src/hooks/commands/use-edit-mode-commands.js +4 -3
- package/src/hooks/navigation-menu-edit.js +2 -1
- package/src/hooks/template-part-edit.js +2 -1
- package/src/store/actions.js +18 -10
- 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/utils/constants.js +17 -1
- package/src/utils/is-template-removable.js +2 -2
- package/src/utils/is-template-revertable.js +2 -2
- 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-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/src/components/block-editor/get-block-editor-provider.js +0 -29
- package/src/components/block-editor/providers/default-block-editor-provider.js +0 -44
|
@@ -59,6 +59,7 @@ const blockRemovalRules = {
|
|
|
59
59
|
'core/post-template': __('Post Template displays each post or page in a Query Loop.')
|
|
60
60
|
};
|
|
61
61
|
export default function Editor({
|
|
62
|
+
listViewToggleElement,
|
|
62
63
|
isLoading
|
|
63
64
|
}) {
|
|
64
65
|
const {
|
|
@@ -183,7 +184,9 @@ export default function Editor({
|
|
|
183
184
|
isDismissible: false
|
|
184
185
|
}, __("You attempted to edit an item that doesn't exist. Perhaps it was deleted?")), isEditMode && createElement(KeyboardShortcutsEditMode, null)),
|
|
185
186
|
contentProps: contentProps,
|
|
186
|
-
secondarySidebar: isEditMode && (shouldShowInserter && createElement(InserterSidebar, null) || shouldShowListView && createElement(ListViewSidebar,
|
|
187
|
+
secondarySidebar: isEditMode && (shouldShowInserter && createElement(InserterSidebar, null) || shouldShowListView && createElement(ListViewSidebar, {
|
|
188
|
+
listViewToggleElement: listViewToggleElement
|
|
189
|
+
})),
|
|
187
190
|
sidebar: isEditMode && isRightSidebarOpen && createElement(Fragment, null, createElement(ComplementaryArea.Slot, {
|
|
188
191
|
scope: "core/edit-site"
|
|
189
192
|
}), createElement(SidebarFixedBottomSlot, null)),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["classnames","useMemo","useSelect","useDispatch","Notice","useInstanceId","EntityProvider","store","preferencesStore","BlockContextProvider","BlockBreadcrumb","blockEditorStore","privateApis","blockEditorPrivateApis","InterfaceSkeleton","ComplementaryArea","interfaceStore","EditorNotices","EditorSnackbars","__","sprintf","SidebarComplementaryAreaFills","BlockEditor","CodeEditor","KeyboardShortcutsEditMode","InserterSidebar","ListViewSidebar","WelcomeGuide","StartTemplateOptions","editSiteStore","GlobalStylesRenderer","useTitle","CanvasLoader","unlock","useEditedEntityRecord","SidebarFixedBottomSlot","POST_TYPE_LABELS","TEMPLATE_POST_TYPE","BlockRemovalWarningModal","interfaceLabels","body","sidebar","actions","footer","blockRemovalRules","Editor","isLoading","record","editedPost","getTitle","isLoaded","hasLoadedPost","id","editedPostId","type","editedPostType","context","editorMode","canvasMode","blockEditorMode","isRightSidebarOpen","isInserterOpen","isListViewOpen","showIconLabels","showBlockBreadcrumbs","hasPageContentFocus","select","getEditedPostContext","getEditorMode","getCanvasMode","isInserterOpened","isListViewOpened","_hasPageContentFocus","__unstableGetEditorMode","getActiveComplementaryArea","name","get","setEditedPostContext","isViewMode","isEditMode","showVisualEditor","shouldShowBlockBreadcrumbs","shouldShowInserter","shouldShowListView","secondarySidebarLabel","blockContext","postType","postId","nonPostFields","queryContext","page","newQueryContext","title","_POST_TYPE_LABELS$edi","loadingProgressId","contentProps","undefined","createElement","Fragment","kind","value","isDistractionFree","enableRegionNavigation","className","notices","content","rules","status","isDismissible","secondarySidebar","Slot","scope","rootLabelText","labels"],"sources":["@wordpress/edit-site/src/components/editor/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { useMemo } from '@wordpress/element';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { Notice } from '@wordpress/components';\nimport { useInstanceId } from '@wordpress/compose';\nimport { EntityProvider } from '@wordpress/core-data';\nimport { store as preferencesStore } from '@wordpress/preferences';\nimport {\n\tBlockContextProvider,\n\tBlockBreadcrumb,\n\tstore as blockEditorStore,\n\tprivateApis as blockEditorPrivateApis,\n} from '@wordpress/block-editor';\nimport {\n\tInterfaceSkeleton,\n\tComplementaryArea,\n\tstore as interfaceStore,\n} from '@wordpress/interface';\nimport { EditorNotices, EditorSnackbars } from '@wordpress/editor';\nimport { __, sprintf } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport { SidebarComplementaryAreaFills } from '../sidebar-edit-mode';\nimport BlockEditor from '../block-editor';\nimport CodeEditor from '../code-editor';\nimport KeyboardShortcutsEditMode from '../keyboard-shortcuts/edit-mode';\nimport InserterSidebar from '../secondary-sidebar/inserter-sidebar';\nimport ListViewSidebar from '../secondary-sidebar/list-view-sidebar';\nimport WelcomeGuide from '../welcome-guide';\nimport StartTemplateOptions from '../start-template-options';\nimport { store as editSiteStore } from '../../store';\nimport { GlobalStylesRenderer } from '../global-styles-renderer';\nimport useTitle from '../routes/use-title';\nimport CanvasLoader from '../canvas-loader';\nimport { unlock } from '../../lock-unlock';\nimport useEditedEntityRecord from '../use-edited-entity-record';\nimport { SidebarFixedBottomSlot } from '../sidebar-edit-mode/sidebar-fixed-bottom';\nimport { POST_TYPE_LABELS, TEMPLATE_POST_TYPE } from '../../utils/constants';\n\nconst { BlockRemovalWarningModal } = unlock( blockEditorPrivateApis );\n\nconst interfaceLabels = {\n\t/* translators: accessibility text for the editor content landmark region. */\n\tbody: __( 'Editor content' ),\n\t/* translators: accessibility text for the editor settings landmark region. */\n\tsidebar: __( 'Editor settings' ),\n\t/* translators: accessibility text for the editor publish landmark region. */\n\tactions: __( 'Editor publish' ),\n\t/* translators: accessibility text for the editor footer landmark region. */\n\tfooter: __( 'Editor footer' ),\n};\n\n// Prevent accidental removal of certain blocks, asking the user for\n// confirmation.\nconst blockRemovalRules = {\n\t'core/query': __( 'Query Loop displays a list of posts or pages.' ),\n\t'core/post-content': __(\n\t\t'Post Content displays the content of a post or page.'\n\t),\n\t'core/post-template': __(\n\t\t'Post Template displays each post or page in a Query Loop.'\n\t),\n};\n\nexport default function Editor( { isLoading } ) {\n\tconst {\n\t\trecord: editedPost,\n\t\tgetTitle,\n\t\tisLoaded: hasLoadedPost,\n\t} = useEditedEntityRecord();\n\n\tconst { id: editedPostId, type: editedPostType } = editedPost;\n\n\tconst {\n\t\tcontext,\n\t\teditorMode,\n\t\tcanvasMode,\n\t\tblockEditorMode,\n\t\tisRightSidebarOpen,\n\t\tisInserterOpen,\n\t\tisListViewOpen,\n\t\tshowIconLabels,\n\t\tshowBlockBreadcrumbs,\n\t\thasPageContentFocus,\n\t} = useSelect( ( select ) => {\n\t\tconst {\n\t\t\tgetEditedPostContext,\n\t\t\tgetEditorMode,\n\t\t\tgetCanvasMode,\n\t\t\tisInserterOpened,\n\t\t\tisListViewOpened,\n\t\t\thasPageContentFocus: _hasPageContentFocus,\n\t\t} = unlock( select( editSiteStore ) );\n\t\tconst { __unstableGetEditorMode } = select( blockEditorStore );\n\t\tconst { getActiveComplementaryArea } = select( interfaceStore );\n\n\t\t// The currently selected entity to display.\n\t\t// Typically template or template part in the site editor.\n\t\treturn {\n\t\t\tcontext: getEditedPostContext(),\n\t\t\teditorMode: getEditorMode(),\n\t\t\tcanvasMode: getCanvasMode(),\n\t\t\tblockEditorMode: __unstableGetEditorMode(),\n\t\t\tisInserterOpen: isInserterOpened(),\n\t\t\tisListViewOpen: isListViewOpened(),\n\t\t\tisRightSidebarOpen: getActiveComplementaryArea(\n\t\t\t\teditSiteStore.name\n\t\t\t),\n\t\t\tshowIconLabels: select( preferencesStore ).get(\n\t\t\t\t'core/edit-site',\n\t\t\t\t'showIconLabels'\n\t\t\t),\n\t\t\tshowBlockBreadcrumbs: select( preferencesStore ).get(\n\t\t\t\t'core/edit-site',\n\t\t\t\t'showBlockBreadcrumbs'\n\t\t\t),\n\t\t\thasPageContentFocus: _hasPageContentFocus(),\n\t\t};\n\t}, [] );\n\tconst { setEditedPostContext } = useDispatch( editSiteStore );\n\n\tconst isViewMode = canvasMode === 'view';\n\tconst isEditMode = canvasMode === 'edit';\n\tconst showVisualEditor = isViewMode || editorMode === 'visual';\n\tconst shouldShowBlockBreadcrumbs =\n\t\tshowBlockBreadcrumbs &&\n\t\tisEditMode &&\n\t\tshowVisualEditor &&\n\t\tblockEditorMode !== 'zoom-out';\n\tconst shouldShowInserter = isEditMode && showVisualEditor && isInserterOpen;\n\tconst shouldShowListView = isEditMode && showVisualEditor && isListViewOpen;\n\tconst secondarySidebarLabel = isListViewOpen\n\t\t? __( 'List View' )\n\t\t: __( 'Block Library' );\n\tconst blockContext = useMemo( () => {\n\t\tconst { postType, postId, ...nonPostFields } = context ?? {};\n\t\treturn {\n\t\t\t...( hasPageContentFocus ? context : nonPostFields ),\n\t\t\tqueryContext: [\n\t\t\t\tcontext?.queryContext || { page: 1 },\n\t\t\t\t( newQueryContext ) =>\n\t\t\t\t\tsetEditedPostContext( {\n\t\t\t\t\t\t...context,\n\t\t\t\t\t\tqueryContext: {\n\t\t\t\t\t\t\t...context?.queryContext,\n\t\t\t\t\t\t\t...newQueryContext,\n\t\t\t\t\t\t},\n\t\t\t\t\t} ),\n\t\t\t],\n\t\t};\n\t}, [ hasPageContentFocus, context, setEditedPostContext ] );\n\n\tlet title;\n\tif ( hasLoadedPost ) {\n\t\ttitle = sprintf(\n\t\t\t// translators: A breadcrumb trail in browser tab. %1$s: title of template being edited, %2$s: type of template (Template or Template Part).\n\t\t\t__( '%1$s ‹ %2$s ‹ Editor' ),\n\t\t\tgetTitle(),\n\t\t\tPOST_TYPE_LABELS[ editedPostType ] ??\n\t\t\t\tPOST_TYPE_LABELS[ TEMPLATE_POST_TYPE ]\n\t\t);\n\t}\n\n\t// Only announce the title once the editor is ready to prevent \"Replace\"\n\t// action in <URLQueryController> from double-announcing.\n\tuseTitle( hasLoadedPost && title );\n\n\tconst loadingProgressId = useInstanceId(\n\t\tCanvasLoader,\n\t\t'edit-site-editor__loading-progress'\n\t);\n\n\tconst contentProps = isLoading\n\t\t? {\n\t\t\t\t'aria-busy': 'true',\n\t\t\t\t'aria-describedby': loadingProgressId,\n\t\t }\n\t\t: undefined;\n\n\treturn (\n\t\t<>\n\t\t\t{ isLoading ? <CanvasLoader id={ loadingProgressId } /> : null }\n\t\t\t{ isEditMode && <WelcomeGuide /> }\n\t\t\t<EntityProvider kind=\"root\" type=\"site\">\n\t\t\t\t<EntityProvider\n\t\t\t\t\tkind=\"postType\"\n\t\t\t\t\ttype={ editedPostType }\n\t\t\t\t\tid={ editedPostId }\n\t\t\t\t>\n\t\t\t\t\t<BlockContextProvider value={ blockContext }>\n\t\t\t\t\t\t<SidebarComplementaryAreaFills />\n\t\t\t\t\t\t{ isEditMode && <StartTemplateOptions /> }\n\t\t\t\t\t\t<InterfaceSkeleton\n\t\t\t\t\t\t\tisDistractionFree={ true }\n\t\t\t\t\t\t\tenableRegionNavigation={ false }\n\t\t\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\t\t\t'edit-site-editor__interface-skeleton',\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t'show-icon-labels': showIconLabels,\n\t\t\t\t\t\t\t\t\t'is-loading': isLoading,\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\tnotices={ <EditorSnackbars /> }\n\t\t\t\t\t\t\tcontent={\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t<GlobalStylesRenderer />\n\t\t\t\t\t\t\t\t\t{ isEditMode && <EditorNotices /> }\n\t\t\t\t\t\t\t\t\t{ showVisualEditor && editedPost && (\n\t\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t\t<BlockEditor />\n\t\t\t\t\t\t\t\t\t\t\t<BlockRemovalWarningModal\n\t\t\t\t\t\t\t\t\t\t\t\trules={ blockRemovalRules }\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t{ editorMode === 'text' &&\n\t\t\t\t\t\t\t\t\t\teditedPost &&\n\t\t\t\t\t\t\t\t\t\tisEditMode && <CodeEditor /> }\n\t\t\t\t\t\t\t\t\t{ hasLoadedPost && ! editedPost && (\n\t\t\t\t\t\t\t\t\t\t<Notice\n\t\t\t\t\t\t\t\t\t\t\tstatus=\"warning\"\n\t\t\t\t\t\t\t\t\t\t\tisDismissible={ false }\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t\t\t\t\"You attempted to edit an item that doesn't exist. Perhaps it was deleted?\"\n\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t</Notice>\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t{ isEditMode && (\n\t\t\t\t\t\t\t\t\t\t<KeyboardShortcutsEditMode />\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tcontentProps={ contentProps }\n\t\t\t\t\t\t\tsecondarySidebar={\n\t\t\t\t\t\t\t\tisEditMode &&\n\t\t\t\t\t\t\t\t( ( shouldShowInserter && (\n\t\t\t\t\t\t\t\t\t<InserterSidebar />\n\t\t\t\t\t\t\t\t) ) ||\n\t\t\t\t\t\t\t\t\t( shouldShowListView && (\n\t\t\t\t\t\t\t\t\t\t<ListViewSidebar />\n\t\t\t\t\t\t\t\t\t) ) )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tsidebar={\n\t\t\t\t\t\t\t\tisEditMode &&\n\t\t\t\t\t\t\t\tisRightSidebarOpen && (\n\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t<ComplementaryArea.Slot scope=\"core/edit-site\" />\n\t\t\t\t\t\t\t\t\t\t<SidebarFixedBottomSlot />\n\t\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tfooter={\n\t\t\t\t\t\t\t\tshouldShowBlockBreadcrumbs && (\n\t\t\t\t\t\t\t\t\t<BlockBreadcrumb\n\t\t\t\t\t\t\t\t\t\trootLabelText={\n\t\t\t\t\t\t\t\t\t\t\thasPageContentFocus\n\t\t\t\t\t\t\t\t\t\t\t\t? __( 'Page' )\n\t\t\t\t\t\t\t\t\t\t\t\t: __( 'Template' )\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tlabels={ {\n\t\t\t\t\t\t\t\t...interfaceLabels,\n\t\t\t\t\t\t\t\tsecondarySidebar: secondarySidebarLabel,\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</BlockContextProvider>\n\t\t\t\t</EntityProvider>\n\t\t\t</EntityProvider>\n\t\t</>\n\t);\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["classnames","useMemo","useSelect","useDispatch","Notice","useInstanceId","EntityProvider","store","preferencesStore","BlockContextProvider","BlockBreadcrumb","blockEditorStore","privateApis","blockEditorPrivateApis","InterfaceSkeleton","ComplementaryArea","interfaceStore","EditorNotices","EditorSnackbars","__","sprintf","SidebarComplementaryAreaFills","BlockEditor","CodeEditor","KeyboardShortcutsEditMode","InserterSidebar","ListViewSidebar","WelcomeGuide","StartTemplateOptions","editSiteStore","GlobalStylesRenderer","useTitle","CanvasLoader","unlock","useEditedEntityRecord","SidebarFixedBottomSlot","POST_TYPE_LABELS","TEMPLATE_POST_TYPE","BlockRemovalWarningModal","interfaceLabels","body","sidebar","actions","footer","blockRemovalRules","Editor","listViewToggleElement","isLoading","record","editedPost","getTitle","isLoaded","hasLoadedPost","id","editedPostId","type","editedPostType","context","editorMode","canvasMode","blockEditorMode","isRightSidebarOpen","isInserterOpen","isListViewOpen","showIconLabels","showBlockBreadcrumbs","hasPageContentFocus","select","getEditedPostContext","getEditorMode","getCanvasMode","isInserterOpened","isListViewOpened","_hasPageContentFocus","__unstableGetEditorMode","getActiveComplementaryArea","name","get","setEditedPostContext","isViewMode","isEditMode","showVisualEditor","shouldShowBlockBreadcrumbs","shouldShowInserter","shouldShowListView","secondarySidebarLabel","blockContext","postType","postId","nonPostFields","queryContext","page","newQueryContext","title","_POST_TYPE_LABELS$edi","loadingProgressId","contentProps","undefined","createElement","Fragment","kind","value","isDistractionFree","enableRegionNavigation","className","notices","content","rules","status","isDismissible","secondarySidebar","Slot","scope","rootLabelText","labels"],"sources":["@wordpress/edit-site/src/components/editor/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { useMemo } from '@wordpress/element';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { Notice } from '@wordpress/components';\nimport { useInstanceId } from '@wordpress/compose';\nimport { EntityProvider } from '@wordpress/core-data';\nimport { store as preferencesStore } from '@wordpress/preferences';\nimport {\n\tBlockContextProvider,\n\tBlockBreadcrumb,\n\tstore as blockEditorStore,\n\tprivateApis as blockEditorPrivateApis,\n} from '@wordpress/block-editor';\nimport {\n\tInterfaceSkeleton,\n\tComplementaryArea,\n\tstore as interfaceStore,\n} from '@wordpress/interface';\nimport { EditorNotices, EditorSnackbars } from '@wordpress/editor';\nimport { __, sprintf } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport { SidebarComplementaryAreaFills } from '../sidebar-edit-mode';\nimport BlockEditor from '../block-editor';\nimport CodeEditor from '../code-editor';\nimport KeyboardShortcutsEditMode from '../keyboard-shortcuts/edit-mode';\nimport InserterSidebar from '../secondary-sidebar/inserter-sidebar';\nimport ListViewSidebar from '../secondary-sidebar/list-view-sidebar';\nimport WelcomeGuide from '../welcome-guide';\nimport StartTemplateOptions from '../start-template-options';\nimport { store as editSiteStore } from '../../store';\nimport { GlobalStylesRenderer } from '../global-styles-renderer';\nimport useTitle from '../routes/use-title';\nimport CanvasLoader from '../canvas-loader';\nimport { unlock } from '../../lock-unlock';\nimport useEditedEntityRecord from '../use-edited-entity-record';\nimport { SidebarFixedBottomSlot } from '../sidebar-edit-mode/sidebar-fixed-bottom';\nimport { POST_TYPE_LABELS, TEMPLATE_POST_TYPE } from '../../utils/constants';\n\nconst { BlockRemovalWarningModal } = unlock( blockEditorPrivateApis );\n\nconst interfaceLabels = {\n\t/* translators: accessibility text for the editor content landmark region. */\n\tbody: __( 'Editor content' ),\n\t/* translators: accessibility text for the editor settings landmark region. */\n\tsidebar: __( 'Editor settings' ),\n\t/* translators: accessibility text for the editor publish landmark region. */\n\tactions: __( 'Editor publish' ),\n\t/* translators: accessibility text for the editor footer landmark region. */\n\tfooter: __( 'Editor footer' ),\n};\n\n// Prevent accidental removal of certain blocks, asking the user for\n// confirmation.\nconst blockRemovalRules = {\n\t'core/query': __( 'Query Loop displays a list of posts or pages.' ),\n\t'core/post-content': __(\n\t\t'Post Content displays the content of a post or page.'\n\t),\n\t'core/post-template': __(\n\t\t'Post Template displays each post or page in a Query Loop.'\n\t),\n};\n\nexport default function Editor( { listViewToggleElement, isLoading } ) {\n\tconst {\n\t\trecord: editedPost,\n\t\tgetTitle,\n\t\tisLoaded: hasLoadedPost,\n\t} = useEditedEntityRecord();\n\n\tconst { id: editedPostId, type: editedPostType } = editedPost;\n\n\tconst {\n\t\tcontext,\n\t\teditorMode,\n\t\tcanvasMode,\n\t\tblockEditorMode,\n\t\tisRightSidebarOpen,\n\t\tisInserterOpen,\n\t\tisListViewOpen,\n\t\tshowIconLabels,\n\t\tshowBlockBreadcrumbs,\n\t\thasPageContentFocus,\n\t} = useSelect( ( select ) => {\n\t\tconst {\n\t\t\tgetEditedPostContext,\n\t\t\tgetEditorMode,\n\t\t\tgetCanvasMode,\n\t\t\tisInserterOpened,\n\t\t\tisListViewOpened,\n\t\t\thasPageContentFocus: _hasPageContentFocus,\n\t\t} = unlock( select( editSiteStore ) );\n\t\tconst { __unstableGetEditorMode } = select( blockEditorStore );\n\t\tconst { getActiveComplementaryArea } = select( interfaceStore );\n\n\t\t// The currently selected entity to display.\n\t\t// Typically template or template part in the site editor.\n\t\treturn {\n\t\t\tcontext: getEditedPostContext(),\n\t\t\teditorMode: getEditorMode(),\n\t\t\tcanvasMode: getCanvasMode(),\n\t\t\tblockEditorMode: __unstableGetEditorMode(),\n\t\t\tisInserterOpen: isInserterOpened(),\n\t\t\tisListViewOpen: isListViewOpened(),\n\t\t\tisRightSidebarOpen: getActiveComplementaryArea(\n\t\t\t\teditSiteStore.name\n\t\t\t),\n\t\t\tshowIconLabels: select( preferencesStore ).get(\n\t\t\t\t'core/edit-site',\n\t\t\t\t'showIconLabels'\n\t\t\t),\n\t\t\tshowBlockBreadcrumbs: select( preferencesStore ).get(\n\t\t\t\t'core/edit-site',\n\t\t\t\t'showBlockBreadcrumbs'\n\t\t\t),\n\t\t\thasPageContentFocus: _hasPageContentFocus(),\n\t\t};\n\t}, [] );\n\tconst { setEditedPostContext } = useDispatch( editSiteStore );\n\n\tconst isViewMode = canvasMode === 'view';\n\tconst isEditMode = canvasMode === 'edit';\n\tconst showVisualEditor = isViewMode || editorMode === 'visual';\n\tconst shouldShowBlockBreadcrumbs =\n\t\tshowBlockBreadcrumbs &&\n\t\tisEditMode &&\n\t\tshowVisualEditor &&\n\t\tblockEditorMode !== 'zoom-out';\n\tconst shouldShowInserter = isEditMode && showVisualEditor && isInserterOpen;\n\tconst shouldShowListView = isEditMode && showVisualEditor && isListViewOpen;\n\tconst secondarySidebarLabel = isListViewOpen\n\t\t? __( 'List View' )\n\t\t: __( 'Block Library' );\n\tconst blockContext = useMemo( () => {\n\t\tconst { postType, postId, ...nonPostFields } = context ?? {};\n\t\treturn {\n\t\t\t...( hasPageContentFocus ? context : nonPostFields ),\n\t\t\tqueryContext: [\n\t\t\t\tcontext?.queryContext || { page: 1 },\n\t\t\t\t( newQueryContext ) =>\n\t\t\t\t\tsetEditedPostContext( {\n\t\t\t\t\t\t...context,\n\t\t\t\t\t\tqueryContext: {\n\t\t\t\t\t\t\t...context?.queryContext,\n\t\t\t\t\t\t\t...newQueryContext,\n\t\t\t\t\t\t},\n\t\t\t\t\t} ),\n\t\t\t],\n\t\t};\n\t}, [ hasPageContentFocus, context, setEditedPostContext ] );\n\n\tlet title;\n\tif ( hasLoadedPost ) {\n\t\ttitle = sprintf(\n\t\t\t// translators: A breadcrumb trail in browser tab. %1$s: title of template being edited, %2$s: type of template (Template or Template Part).\n\t\t\t__( '%1$s ‹ %2$s ‹ Editor' ),\n\t\t\tgetTitle(),\n\t\t\tPOST_TYPE_LABELS[ editedPostType ] ??\n\t\t\t\tPOST_TYPE_LABELS[ TEMPLATE_POST_TYPE ]\n\t\t);\n\t}\n\n\t// Only announce the title once the editor is ready to prevent \"Replace\"\n\t// action in <URLQueryController> from double-announcing.\n\tuseTitle( hasLoadedPost && title );\n\n\tconst loadingProgressId = useInstanceId(\n\t\tCanvasLoader,\n\t\t'edit-site-editor__loading-progress'\n\t);\n\n\tconst contentProps = isLoading\n\t\t? {\n\t\t\t\t'aria-busy': 'true',\n\t\t\t\t'aria-describedby': loadingProgressId,\n\t\t }\n\t\t: undefined;\n\n\treturn (\n\t\t<>\n\t\t\t{ isLoading ? <CanvasLoader id={ loadingProgressId } /> : null }\n\t\t\t{ isEditMode && <WelcomeGuide /> }\n\t\t\t<EntityProvider kind=\"root\" type=\"site\">\n\t\t\t\t<EntityProvider\n\t\t\t\t\tkind=\"postType\"\n\t\t\t\t\ttype={ editedPostType }\n\t\t\t\t\tid={ editedPostId }\n\t\t\t\t>\n\t\t\t\t\t<BlockContextProvider value={ blockContext }>\n\t\t\t\t\t\t<SidebarComplementaryAreaFills />\n\t\t\t\t\t\t{ isEditMode && <StartTemplateOptions /> }\n\t\t\t\t\t\t<InterfaceSkeleton\n\t\t\t\t\t\t\tisDistractionFree={ true }\n\t\t\t\t\t\t\tenableRegionNavigation={ false }\n\t\t\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\t\t\t'edit-site-editor__interface-skeleton',\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t'show-icon-labels': showIconLabels,\n\t\t\t\t\t\t\t\t\t'is-loading': isLoading,\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\tnotices={ <EditorSnackbars /> }\n\t\t\t\t\t\t\tcontent={\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t<GlobalStylesRenderer />\n\t\t\t\t\t\t\t\t\t{ isEditMode && <EditorNotices /> }\n\t\t\t\t\t\t\t\t\t{ showVisualEditor && editedPost && (\n\t\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t\t<BlockEditor />\n\t\t\t\t\t\t\t\t\t\t\t<BlockRemovalWarningModal\n\t\t\t\t\t\t\t\t\t\t\t\trules={ blockRemovalRules }\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t{ editorMode === 'text' &&\n\t\t\t\t\t\t\t\t\t\teditedPost &&\n\t\t\t\t\t\t\t\t\t\tisEditMode && <CodeEditor /> }\n\t\t\t\t\t\t\t\t\t{ hasLoadedPost && ! editedPost && (\n\t\t\t\t\t\t\t\t\t\t<Notice\n\t\t\t\t\t\t\t\t\t\t\tstatus=\"warning\"\n\t\t\t\t\t\t\t\t\t\t\tisDismissible={ false }\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t\t\t\t\"You attempted to edit an item that doesn't exist. Perhaps it was deleted?\"\n\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t</Notice>\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t{ isEditMode && (\n\t\t\t\t\t\t\t\t\t\t<KeyboardShortcutsEditMode />\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tcontentProps={ contentProps }\n\t\t\t\t\t\t\tsecondarySidebar={\n\t\t\t\t\t\t\t\tisEditMode &&\n\t\t\t\t\t\t\t\t( ( shouldShowInserter && (\n\t\t\t\t\t\t\t\t\t<InserterSidebar />\n\t\t\t\t\t\t\t\t) ) ||\n\t\t\t\t\t\t\t\t\t( shouldShowListView && (\n\t\t\t\t\t\t\t\t\t\t<ListViewSidebar\n\t\t\t\t\t\t\t\t\t\t\tlistViewToggleElement={\n\t\t\t\t\t\t\t\t\t\t\t\tlistViewToggleElement\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t) ) )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tsidebar={\n\t\t\t\t\t\t\t\tisEditMode &&\n\t\t\t\t\t\t\t\tisRightSidebarOpen && (\n\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t<ComplementaryArea.Slot scope=\"core/edit-site\" />\n\t\t\t\t\t\t\t\t\t\t<SidebarFixedBottomSlot />\n\t\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tfooter={\n\t\t\t\t\t\t\t\tshouldShowBlockBreadcrumbs && (\n\t\t\t\t\t\t\t\t\t<BlockBreadcrumb\n\t\t\t\t\t\t\t\t\t\trootLabelText={\n\t\t\t\t\t\t\t\t\t\t\thasPageContentFocus\n\t\t\t\t\t\t\t\t\t\t\t\t? __( 'Page' )\n\t\t\t\t\t\t\t\t\t\t\t\t: __( 'Template' )\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tlabels={ {\n\t\t\t\t\t\t\t\t...interfaceLabels,\n\t\t\t\t\t\t\t\tsecondarySidebar: secondarySidebarLabel,\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</BlockContextProvider>\n\t\t\t\t</EntityProvider>\n\t\t\t</EntityProvider>\n\t\t</>\n\t);\n}\n"],"mappings":"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"}
|
|
@@ -10,7 +10,7 @@ import { useContext } from '@wordpress/element';
|
|
|
10
10
|
* Internal dependencies
|
|
11
11
|
*/
|
|
12
12
|
import { FontLibraryContext } from './font-library-modal/context';
|
|
13
|
-
import {
|
|
13
|
+
import { getFamilyPreviewStyle } from './font-library-modal/utils/preview-styles';
|
|
14
14
|
function FontFamilyItem({
|
|
15
15
|
font
|
|
16
16
|
}) {
|
|
@@ -23,7 +23,7 @@ function FontFamilyItem({
|
|
|
23
23
|
handleSetLibraryFontSelected(font);
|
|
24
24
|
toggleModal('installed-fonts');
|
|
25
25
|
};
|
|
26
|
-
const previewStyle =
|
|
26
|
+
const previewStyle = getFamilyPreviewStyle(font);
|
|
27
27
|
return createElement(Item, {
|
|
28
28
|
onClick: handleClick
|
|
29
29
|
}, createElement(HStack, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_n","__experimentalHStack","HStack","__experimentalItem","Item","FlexItem","useContext","FontLibraryContext","
|
|
1
|
+
{"version":3,"names":["_n","__experimentalHStack","HStack","__experimentalItem","Item","FlexItem","useContext","FontLibraryContext","getFamilyPreviewStyle","FontFamilyItem","font","handleSetLibraryFontSelected","toggleModal","variantsCount","fontFace","length","handleClick","previewStyle","createElement","onClick","justify","style","name","color"],"sources":["@wordpress/edit-site/src/components/global-styles/font-family-item.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { _n } from '@wordpress/i18n';\nimport {\n\t__experimentalHStack as HStack,\n\t__experimentalItem as Item,\n\tFlexItem,\n} from '@wordpress/components';\nimport { useContext } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { FontLibraryContext } from './font-library-modal/context';\nimport { getFamilyPreviewStyle } from './font-library-modal/utils/preview-styles';\n\nfunction FontFamilyItem( { font } ) {\n\tconst { handleSetLibraryFontSelected, toggleModal } =\n\t\tuseContext( FontLibraryContext );\n\n\tconst variantsCount = font?.fontFace?.length || 1;\n\n\tconst handleClick = () => {\n\t\thandleSetLibraryFontSelected( font );\n\t\ttoggleModal( 'installed-fonts' );\n\t};\n\n\tconst previewStyle = getFamilyPreviewStyle( font );\n\n\treturn (\n\t\t<Item onClick={ handleClick }>\n\t\t\t<HStack justify=\"space-between\">\n\t\t\t\t<FlexItem style={ previewStyle }>{ font.name }</FlexItem>\n\t\t\t\t<FlexItem style={ { color: '#9e9e9e' } }>\n\t\t\t\t\t{ variantsCount }{ ' ' }\n\t\t\t\t\t{ _n( 'variant', 'variants', variantsCount ) }\n\t\t\t\t</FlexItem>\n\t\t\t</HStack>\n\t\t</Item>\n\t);\n}\n\nexport default FontFamilyItem;\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,EAAE,QAAQ,iBAAiB;AACpC,SACCC,oBAAoB,IAAIC,MAAM,EAC9BC,kBAAkB,IAAIC,IAAI,EAC1BC,QAAQ,QACF,uBAAuB;AAC9B,SAASC,UAAU,QAAQ,oBAAoB;;AAE/C;AACA;AACA;AACA,SAASC,kBAAkB,QAAQ,8BAA8B;AACjE,SAASC,qBAAqB,QAAQ,2CAA2C;AAEjF,SAASC,cAAcA,CAAE;EAAEC;AAAK,CAAC,EAAG;EACnC,MAAM;IAAEC,4BAA4B;IAAEC;EAAY,CAAC,GAClDN,UAAU,CAAEC,kBAAmB,CAAC;EAEjC,MAAMM,aAAa,GAAGH,IAAI,EAAEI,QAAQ,EAAEC,MAAM,IAAI,CAAC;EAEjD,MAAMC,WAAW,GAAGA,CAAA,KAAM;IACzBL,4BAA4B,CAAED,IAAK,CAAC;IACpCE,WAAW,CAAE,iBAAkB,CAAC;EACjC,CAAC;EAED,MAAMK,YAAY,GAAGT,qBAAqB,CAAEE,IAAK,CAAC;EAElD,OACCQ,aAAA,CAACd,IAAI;IAACe,OAAO,EAAGH;EAAa,GAC5BE,aAAA,CAAChB,MAAM;IAACkB,OAAO,EAAC;EAAe,GAC9BF,aAAA,CAACb,QAAQ;IAACgB,KAAK,EAAGJ;EAAc,GAAGP,IAAI,CAACY,IAAgB,CAAC,EACzDJ,aAAA,CAACb,QAAQ;IAACgB,KAAK,EAAG;MAAEE,KAAK,EAAE;IAAU;EAAG,GACrCV,aAAa,EAAI,GAAG,EACpBb,EAAE,CAAE,SAAS,EAAE,UAAU,EAAEa,aAAc,CAClC,CACH,CACH,CAAC;AAET;AAEA,eAAeJ,cAAc"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { createElement, Fragment } from "@wordpress/element";
|
|
2
|
+
/**
|
|
3
|
+
* WordPress dependencies
|
|
4
|
+
*/
|
|
5
|
+
import { __experimentalVStack as VStack, __experimentalSpacer as Spacer } from '@wordpress/components';
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* Internal dependencies
|
|
9
|
+
*/
|
|
10
|
+
import CollectionFontVariant from './collection-font-variant';
|
|
11
|
+
import { isFontFontFaceInOutline } from './utils/fonts-outline';
|
|
12
|
+
import { sortFontFaces } from './utils/sort-font-faces';
|
|
13
|
+
function CollectionFontDetails({
|
|
14
|
+
font,
|
|
15
|
+
handleToggleVariant,
|
|
16
|
+
fontToInstallOutline
|
|
17
|
+
}) {
|
|
18
|
+
const fontFaces = font.fontFace && font.fontFace.length ? sortFontFaces(font.fontFace) : [{
|
|
19
|
+
fontFamily: font.fontFamily,
|
|
20
|
+
fontStyle: 'normal',
|
|
21
|
+
fontWeight: '400'
|
|
22
|
+
}];
|
|
23
|
+
return createElement(Fragment, null, createElement(Spacer, {
|
|
24
|
+
margin: 4
|
|
25
|
+
}), createElement(VStack, {
|
|
26
|
+
spacing: 0
|
|
27
|
+
}, createElement(Spacer, {
|
|
28
|
+
margin: 8
|
|
29
|
+
}), fontFaces.map((face, i) => createElement(CollectionFontVariant, {
|
|
30
|
+
font: font,
|
|
31
|
+
face: face,
|
|
32
|
+
key: `face${i}`,
|
|
33
|
+
handleToggleVariant: handleToggleVariant,
|
|
34
|
+
selected: isFontFontFaceInOutline(font.slug, face, fontToInstallOutline)
|
|
35
|
+
}))), createElement(Spacer, {
|
|
36
|
+
margin: 8
|
|
37
|
+
}));
|
|
38
|
+
}
|
|
39
|
+
export default CollectionFontDetails;
|
|
40
|
+
//# sourceMappingURL=collection-font-details.js.map
|
package/build-module/components/global-styles/font-library-modal/collection-font-details.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["__experimentalVStack","VStack","__experimentalSpacer","Spacer","CollectionFontVariant","isFontFontFaceInOutline","sortFontFaces","CollectionFontDetails","font","handleToggleVariant","fontToInstallOutline","fontFaces","fontFace","length","fontFamily","fontStyle","fontWeight","createElement","Fragment","margin","spacing","map","face","i","key","selected","slug"],"sources":["@wordpress/edit-site/src/components/global-styles/font-library-modal/collection-font-details.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalVStack as VStack,\n\t__experimentalSpacer as Spacer,\n} from '@wordpress/components';\n\n/**\n * Internal dependencies\n */\nimport CollectionFontVariant from './collection-font-variant';\nimport { isFontFontFaceInOutline } from './utils/fonts-outline';\nimport { sortFontFaces } from './utils/sort-font-faces';\n\nfunction CollectionFontDetails( {\n\tfont,\n\thandleToggleVariant,\n\tfontToInstallOutline,\n} ) {\n\tconst fontFaces =\n\t\tfont.fontFace && font.fontFace.length\n\t\t\t? sortFontFaces( font.fontFace )\n\t\t\t: [\n\t\t\t\t\t{\n\t\t\t\t\t\tfontFamily: font.fontFamily,\n\t\t\t\t\t\tfontStyle: 'normal',\n\t\t\t\t\t\tfontWeight: '400',\n\t\t\t\t\t},\n\t\t\t ];\n\n\treturn (\n\t\t<>\n\t\t\t<Spacer margin={ 4 } />\n\t\t\t<VStack spacing={ 0 }>\n\t\t\t\t<Spacer margin={ 8 } />\n\t\t\t\t{ fontFaces.map( ( face, i ) => (\n\t\t\t\t\t<CollectionFontVariant\n\t\t\t\t\t\tfont={ font }\n\t\t\t\t\t\tface={ face }\n\t\t\t\t\t\tkey={ `face${ i }` }\n\t\t\t\t\t\thandleToggleVariant={ handleToggleVariant }\n\t\t\t\t\t\tselected={ isFontFontFaceInOutline(\n\t\t\t\t\t\t\tfont.slug,\n\t\t\t\t\t\t\tface,\n\t\t\t\t\t\t\tfontToInstallOutline\n\t\t\t\t\t\t) }\n\t\t\t\t\t/>\n\t\t\t\t) ) }\n\t\t\t</VStack>\n\t\t\t<Spacer margin={ 8 } />\n\t\t</>\n\t);\n}\n\nexport default CollectionFontDetails;\n"],"mappings":";AAAA;AACA;AACA;AACA,SACCA,oBAAoB,IAAIC,MAAM,EAC9BC,oBAAoB,IAAIC,MAAM,QACxB,uBAAuB;;AAE9B;AACA;AACA;AACA,OAAOC,qBAAqB,MAAM,2BAA2B;AAC7D,SAASC,uBAAuB,QAAQ,uBAAuB;AAC/D,SAASC,aAAa,QAAQ,yBAAyB;AAEvD,SAASC,qBAAqBA,CAAE;EAC/BC,IAAI;EACJC,mBAAmB;EACnBC;AACD,CAAC,EAAG;EACH,MAAMC,SAAS,GACdH,IAAI,CAACI,QAAQ,IAAIJ,IAAI,CAACI,QAAQ,CAACC,MAAM,GAClCP,aAAa,CAAEE,IAAI,CAACI,QAAS,CAAC,GAC9B,CACA;IACCE,UAAU,EAAEN,IAAI,CAACM,UAAU;IAC3BC,SAAS,EAAE,QAAQ;IACnBC,UAAU,EAAE;EACb,CAAC,CACA;EAEL,OACCC,aAAA,CAAAC,QAAA,QACCD,aAAA,CAACd,MAAM;IAACgB,MAAM,EAAG;EAAG,CAAE,CAAC,EACvBF,aAAA,CAAChB,MAAM;IAACmB,OAAO,EAAG;EAAG,GACpBH,aAAA,CAACd,MAAM;IAACgB,MAAM,EAAG;EAAG,CAAE,CAAC,EACrBR,SAAS,CAACU,GAAG,CAAE,CAAEC,IAAI,EAAEC,CAAC,KACzBN,aAAA,CAACb,qBAAqB;IACrBI,IAAI,EAAGA,IAAM;IACbc,IAAI,EAAGA,IAAM;IACbE,GAAG,EAAI,OAAOD,CAAG,EAAG;IACpBd,mBAAmB,EAAGA,mBAAqB;IAC3CgB,QAAQ,EAAGpB,uBAAuB,CACjCG,IAAI,CAACkB,IAAI,EACTJ,IAAI,EACJZ,oBACD;EAAG,CACH,CACA,CACK,CAAC,EACTO,aAAA,CAACd,MAAM;IAACgB,MAAM,EAAG;EAAG,CAAE,CACrB,CAAC;AAEL;AAEA,eAAeZ,qBAAqB"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { createElement } from "@wordpress/element";
|
|
2
|
+
/**
|
|
3
|
+
* WordPress dependencies
|
|
4
|
+
*/
|
|
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 FontFaceDemo from './font-demo';
|
|
15
|
+
function CollectionFontVariant({
|
|
16
|
+
face,
|
|
17
|
+
font,
|
|
18
|
+
handleToggleVariant,
|
|
19
|
+
selected
|
|
20
|
+
}) {
|
|
21
|
+
const handleToggleActivation = () => {
|
|
22
|
+
if (font?.fontFace) {
|
|
23
|
+
handleToggleVariant(font, face);
|
|
24
|
+
return;
|
|
25
|
+
}
|
|
26
|
+
handleToggleVariant(font);
|
|
27
|
+
};
|
|
28
|
+
const displayName = font.name + ' ' + getFontFaceVariantName(face);
|
|
29
|
+
return createElement("div", {
|
|
30
|
+
className: "font-library-modal__library-font-variant"
|
|
31
|
+
}, createElement(Flex, {
|
|
32
|
+
justify: "space-between",
|
|
33
|
+
align: "center",
|
|
34
|
+
gap: "1rem"
|
|
35
|
+
}, createElement(FontFaceDemo, {
|
|
36
|
+
fontFace: face,
|
|
37
|
+
text: displayName
|
|
38
|
+
}), createElement(CheckboxControl, {
|
|
39
|
+
checked: selected,
|
|
40
|
+
onChange: handleToggleActivation,
|
|
41
|
+
__nextHasNoMarginBottom: true
|
|
42
|
+
})));
|
|
43
|
+
}
|
|
44
|
+
export default CollectionFontVariant;
|
|
45
|
+
//# sourceMappingURL=collection-font-variant.js.map
|
package/build-module/components/global-styles/font-library-modal/collection-font-variant.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["CheckboxControl","Flex","getFontFaceVariantName","FontFaceDemo","CollectionFontVariant","face","font","handleToggleVariant","selected","handleToggleActivation","fontFace","displayName","name","createElement","className","justify","align","gap","text","checked","onChange","__nextHasNoMarginBottom"],"sources":["@wordpress/edit-site/src/components/global-styles/font-library-modal/collection-font-variant.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { CheckboxControl, Flex } from '@wordpress/components';\n/**\n * Internal dependencies\n */\nimport { getFontFaceVariantName } from './utils';\n\n/**\n * Internal dependencies\n */\nimport FontFaceDemo from './font-demo';\n\nfunction CollectionFontVariant( {\n\tface,\n\tfont,\n\thandleToggleVariant,\n\tselected,\n} ) {\n\tconst handleToggleActivation = () => {\n\t\tif ( font?.fontFace ) {\n\t\t\thandleToggleVariant( font, face );\n\t\t\treturn;\n\t\t}\n\t\thandleToggleVariant( font );\n\t};\n\n\tconst displayName = font.name + ' ' + getFontFaceVariantName( face );\n\n\treturn (\n\t\t<div className=\"font-library-modal__library-font-variant\">\n\t\t\t<Flex justify=\"space-between\" align=\"center\" gap=\"1rem\">\n\t\t\t\t<FontFaceDemo fontFace={ face } text={ displayName } />\n\t\t\t\t<CheckboxControl\n\t\t\t\t\tchecked={ selected }\n\t\t\t\t\tonChange={ handleToggleActivation }\n\t\t\t\t\t__nextHasNoMarginBottom={ true }\n\t\t\t\t/>\n\t\t\t</Flex>\n\t\t</div>\n\t);\n}\n\nexport default CollectionFontVariant;\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,eAAe,EAAEC,IAAI,QAAQ,uBAAuB;AAC7D;AACA;AACA;AACA,SAASC,sBAAsB,QAAQ,SAAS;;AAEhD;AACA;AACA;AACA,OAAOC,YAAY,MAAM,aAAa;AAEtC,SAASC,qBAAqBA,CAAE;EAC/BC,IAAI;EACJC,IAAI;EACJC,mBAAmB;EACnBC;AACD,CAAC,EAAG;EACH,MAAMC,sBAAsB,GAAGA,CAAA,KAAM;IACpC,IAAKH,IAAI,EAAEI,QAAQ,EAAG;MACrBH,mBAAmB,CAAED,IAAI,EAAED,IAAK,CAAC;MACjC;IACD;IACAE,mBAAmB,CAAED,IAAK,CAAC;EAC5B,CAAC;EAED,MAAMK,WAAW,GAAGL,IAAI,CAACM,IAAI,GAAG,GAAG,GAAGV,sBAAsB,CAAEG,IAAK,CAAC;EAEpE,OACCQ,aAAA;IAAKC,SAAS,EAAC;EAA0C,GACxDD,aAAA,CAACZ,IAAI;IAACc,OAAO,EAAC,eAAe;IAACC,KAAK,EAAC,QAAQ;IAACC,GAAG,EAAC;EAAM,GACtDJ,aAAA,CAACV,YAAY;IAACO,QAAQ,EAAGL,IAAM;IAACa,IAAI,EAAGP;EAAa,CAAE,CAAC,EACvDE,aAAA,CAACb,eAAe;IACfmB,OAAO,EAAGX,QAAU;IACpBY,QAAQ,EAAGX,sBAAwB;IACnCY,uBAAuB,EAAG;EAAM,CAChC,CACI,CACF,CAAC;AAER;AAEA,eAAejB,qBAAqB"}
|
|
@@ -12,7 +12,7 @@ import { __ } from '@wordpress/i18n';
|
|
|
12
12
|
/**
|
|
13
13
|
* Internal dependencies
|
|
14
14
|
*/
|
|
15
|
-
import { fetchInstallFonts, fetchUninstallFonts } from './resolvers';
|
|
15
|
+
import { fetchInstallFonts, fetchUninstallFonts, fetchFontCollections, fetchFontCollection } from './resolvers';
|
|
16
16
|
import { unlock } from '../../../lock-unlock';
|
|
17
17
|
const {
|
|
18
18
|
useGlobalSetting
|
|
@@ -45,7 +45,7 @@ function FontLibraryProvider({
|
|
|
45
45
|
const [isInstalling, setIsInstalling] = useState(false);
|
|
46
46
|
const [refreshKey, setRefreshKey] = useState(0);
|
|
47
47
|
const refreshLibrary = () => {
|
|
48
|
-
setRefreshKey(
|
|
48
|
+
setRefreshKey(Date.now());
|
|
49
49
|
};
|
|
50
50
|
const {
|
|
51
51
|
records: libraryPosts = [],
|
|
@@ -246,6 +246,28 @@ function FontLibraryProvider({
|
|
|
246
246
|
// Add the font to the loaded fonts list.
|
|
247
247
|
loadedFontUrls.add(src);
|
|
248
248
|
};
|
|
249
|
+
|
|
250
|
+
// Font Collections
|
|
251
|
+
const [collections, setFontCollections] = useState([]);
|
|
252
|
+
const getFontCollections = async () => {
|
|
253
|
+
const response = await fetchFontCollections();
|
|
254
|
+
setFontCollections(response);
|
|
255
|
+
};
|
|
256
|
+
const getFontCollection = async id => {
|
|
257
|
+
const hasData = !!collections.find(collection => collection.id === id)?.data;
|
|
258
|
+
if (hasData) return;
|
|
259
|
+
const response = await fetchFontCollection(id);
|
|
260
|
+
const updatedCollections = collections.map(collection => collection.id === id ? {
|
|
261
|
+
...collection,
|
|
262
|
+
data: {
|
|
263
|
+
...response?.data
|
|
264
|
+
}
|
|
265
|
+
} : collection);
|
|
266
|
+
setFontCollections(updatedCollections);
|
|
267
|
+
};
|
|
268
|
+
useEffect(() => {
|
|
269
|
+
getFontCollections();
|
|
270
|
+
}, []);
|
|
249
271
|
return createElement(FontLibraryContext.Provider, {
|
|
250
272
|
value: {
|
|
251
273
|
libraryFontSelected,
|
|
@@ -268,7 +290,9 @@ function FontLibraryProvider({
|
|
|
268
290
|
fontFamiliesHasChanges,
|
|
269
291
|
isResolvingLibrary,
|
|
270
292
|
hasResolvedLibrary,
|
|
271
|
-
isInstalling
|
|
293
|
+
isInstalling,
|
|
294
|
+
collections,
|
|
295
|
+
getFontCollection
|
|
272
296
|
}
|
|
273
297
|
}, children);
|
|
274
298
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createContext","useState","useEffect","privateApis","blockEditorPrivateApis","useSelect","useDispatch","useEntityRecord","useEntityRecords","store","coreStore","noticesStore","__","fetchInstallFonts","fetchUninstallFonts","unlock","useGlobalSetting","setUIValuesNeeded","mergeFontFamilies","loadFontFaceInBrowser","getDisplaySrcFromFontFace","makeFormDataFromFontFamilies","toggleFont","getIntersectingFontFaces","FontLibraryContext","FontLibraryProvider","children","__experimentalSaveSpecifiedEntityEdits","saveSpecifiedEntityEdits","globalStylesId","select","__experimentalGetCurrentGlobalStylesId","globalStyles","fontFamiliesHasChanges","edits","settings","typography","fontFamilies","createErrorNotice","isInstalling","setIsInstalling","refreshKey","setRefreshKey","refreshLibrary","prevKey","records","libraryPosts","isResolving","isResolvingLibrary","hasResolved","hasResolvedLibrary","libraryFonts","map","post","JSON","parse","content","raw","setFontFamilies","baseFontFamilies","undefined","saveFontFamilies","modalTabOpen","setModalTabOpen","libraryFontSelected","setLibraryFontSelected","baseThemeFonts","theme","f","source","sort","a","b","name","localeCompare","themeFonts","customFonts","custom","baseCustomFonts","handleSetLibraryFontSelected","font","fonts","fontSelected","find","slug","toggleModal","tabName","loadedFontUrls","Set","site","currentTheme","getSite","getCurrentTheme","themeUrl","url","stylesheet","getAvailableFontsOutline","availableFontFamilies","outline","reduce","acc","availableFontFaces","Array","isArray","fontFace","face","fontStyle","fontWeight","getActivatedFontsOutline","isFontActivated","style","weight","includes","getFontFacesActivated","installFonts","formData","fontsInstalled","fontToBeActivated","activateCustomFontFamilies","e","console","error","type","uninstallFont","deactivateFontFamily","_fontFamilies$font$so","initialCustomFonts","newCustomFonts","filter","fontsToAdd","forEach","src","toggleActivateFont","_fontFamilies$font$so2","initialFonts","newFonts","loadFontFaceAsset","has","add","createElement","Provider","value"],"sources":["@wordpress/edit-site/src/components/global-styles/font-library-modal/context.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { createContext, useState, useEffect } from '@wordpress/element';\nimport { privateApis as blockEditorPrivateApis } from '@wordpress/block-editor';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport {\n\tuseEntityRecord,\n\tuseEntityRecords,\n\tstore as coreStore,\n} from '@wordpress/core-data';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport { fetchInstallFonts, fetchUninstallFonts } from './resolvers';\nimport { unlock } from '../../../lock-unlock';\nconst { useGlobalSetting } = unlock( blockEditorPrivateApis );\nimport {\n\tsetUIValuesNeeded,\n\tmergeFontFamilies,\n\tloadFontFaceInBrowser,\n\tgetDisplaySrcFromFontFace,\n\tmakeFormDataFromFontFamilies,\n} from './utils';\nimport { toggleFont } from './utils/toggleFont';\nimport getIntersectingFontFaces from './utils/get-intersecting-font-faces';\n\nexport const FontLibraryContext = createContext( {} );\n\nfunction FontLibraryProvider( { children } ) {\n\tconst { __experimentalSaveSpecifiedEntityEdits: saveSpecifiedEntityEdits } =\n\t\tuseDispatch( coreStore );\n\tconst { globalStylesId } = useSelect( ( select ) => {\n\t\tconst { __experimentalGetCurrentGlobalStylesId } = select( coreStore );\n\t\treturn { globalStylesId: __experimentalGetCurrentGlobalStylesId() };\n\t} );\n\n\tconst globalStyles = useEntityRecord(\n\t\t'root',\n\t\t'globalStyles',\n\t\tglobalStylesId\n\t);\n\tconst fontFamiliesHasChanges =\n\t\t!! globalStyles?.edits?.settings?.typography?.fontFamilies;\n\n\tconst { createErrorNotice } = useDispatch( noticesStore );\n\n\tconst [ isInstalling, setIsInstalling ] = useState( false );\n\tconst [ refreshKey, setRefreshKey ] = useState( 0 );\n\n\tconst refreshLibrary = () => {\n\t\tsetRefreshKey( ( prevKey ) => prevKey + 1 );\n\t};\n\n\tconst {\n\t\trecords: libraryPosts = [],\n\t\tisResolving: isResolvingLibrary,\n\t\thasResolved: hasResolvedLibrary,\n\t} = useEntityRecords( 'postType', 'wp_font_family', { refreshKey } );\n\n\tconst libraryFonts =\n\t\t( libraryPosts || [] ).map( ( post ) =>\n\t\t\tJSON.parse( post.content.raw )\n\t\t) || [];\n\n\t// Global Styles (settings) font families\n\tconst [ fontFamilies, setFontFamilies ] = useGlobalSetting(\n\t\t'typography.fontFamilies'\n\t);\n\t// theme.json file font families\n\tconst [ baseFontFamilies ] = useGlobalSetting(\n\t\t'typography.fontFamilies',\n\t\tundefined,\n\t\t'base'\n\t);\n\n\t// Save font families to the global styles post in the database.\n\tconst saveFontFamilies = () => {\n\t\tsaveSpecifiedEntityEdits( 'root', 'globalStyles', globalStylesId, [\n\t\t\t'settings.typography.fontFamilies',\n\t\t] );\n\t};\n\n\t// Library Fonts\n\tconst [ modalTabOpen, setModalTabOpen ] = useState( false );\n\tconst [ libraryFontSelected, setLibraryFontSelected ] = useState( null );\n\n\tconst baseThemeFonts = baseFontFamilies?.theme\n\t\t? baseFontFamilies.theme\n\t\t\t\t.map( ( f ) => setUIValuesNeeded( f, { source: 'theme' } ) )\n\t\t\t\t.sort( ( a, b ) => a.name.localeCompare( b.name ) )\n\t\t: [];\n\n\tconst themeFonts = fontFamilies?.theme\n\t\t? fontFamilies.theme\n\t\t\t\t.map( ( f ) => setUIValuesNeeded( f, { source: 'theme' } ) )\n\t\t\t\t.sort( ( a, b ) => a.name.localeCompare( b.name ) )\n\t\t: [];\n\n\tconst customFonts = fontFamilies?.custom\n\t\t? fontFamilies.custom\n\t\t\t\t.map( ( f ) => setUIValuesNeeded( f, { source: 'custom' } ) )\n\t\t\t\t.sort( ( a, b ) => a.name.localeCompare( b.name ) )\n\t\t: [];\n\n\tconst baseCustomFonts = libraryFonts\n\t\t? libraryFonts\n\t\t\t\t.map( ( f ) => setUIValuesNeeded( f, { source: 'custom' } ) )\n\t\t\t\t.sort( ( a, b ) => a.name.localeCompare( b.name ) )\n\t\t: [];\n\n\tuseEffect( () => {\n\t\tif ( ! modalTabOpen ) {\n\t\t\tsetLibraryFontSelected( null );\n\t\t}\n\t}, [ modalTabOpen ] );\n\n\tconst handleSetLibraryFontSelected = ( font ) => {\n\t\t// If font is null, reset the selected font\n\t\tif ( ! font ) {\n\t\t\tsetLibraryFontSelected( null );\n\t\t\treturn;\n\t\t}\n\n\t\tconst fonts =\n\t\t\tfont.source === 'theme' ? baseThemeFonts : baseCustomFonts;\n\n\t\t// Tries to find the font in the installed fonts\n\t\tconst fontSelected = fonts.find( ( f ) => f.slug === font.slug );\n\t\t// If the font is not found (it is only defined in custom styles), use the font from custom styles\n\t\tsetLibraryFontSelected( {\n\t\t\t...( fontSelected || font ),\n\t\t\tsource: font.source,\n\t\t} );\n\t};\n\n\tconst toggleModal = ( tabName ) => {\n\t\tsetModalTabOpen( tabName || null );\n\t};\n\n\t// Demo\n\tconst [ loadedFontUrls ] = useState( new Set() );\n\n\t// Theme data\n\tconst { site, currentTheme } = useSelect( ( select ) => {\n\t\treturn {\n\t\t\tsite: select( coreStore ).getSite(),\n\t\t\tcurrentTheme: select( coreStore ).getCurrentTheme(),\n\t\t};\n\t} );\n\tconst themeUrl =\n\t\tsite?.url + '/wp-content/themes/' + currentTheme?.stylesheet;\n\n\tconst getAvailableFontsOutline = ( availableFontFamilies ) => {\n\t\tconst outline = availableFontFamilies.reduce( ( acc, font ) => {\n\t\t\tconst availableFontFaces = Array.isArray( font?.fontFace )\n\t\t\t\t? font?.fontFace.map(\n\t\t\t\t\t\t( face ) => `${ face.fontStyle + face.fontWeight }`\n\t\t\t\t )\n\t\t\t\t: [ 'normal400' ]; // If the font doesn't have fontFace, we assume it is a system font and we add the defaults: normal 400\n\n\t\t\tacc[ font.slug ] = availableFontFaces;\n\t\t\treturn acc;\n\t\t}, {} );\n\t\treturn outline;\n\t};\n\n\tconst getActivatedFontsOutline = ( source ) => {\n\t\tswitch ( source ) {\n\t\t\tcase 'theme':\n\t\t\t\treturn getAvailableFontsOutline( themeFonts );\n\t\t\tcase 'custom':\n\t\t\tdefault:\n\t\t\t\treturn getAvailableFontsOutline( customFonts );\n\t\t}\n\t};\n\n\tconst isFontActivated = ( slug, style, weight, source ) => {\n\t\tif ( ! style && ! weight ) {\n\t\t\treturn !! getActivatedFontsOutline( source )[ slug ];\n\t\t}\n\t\treturn !! getActivatedFontsOutline( source )[ slug ]?.includes(\n\t\t\tstyle + weight\n\t\t);\n\t};\n\n\tconst getFontFacesActivated = ( slug, source ) => {\n\t\treturn getActivatedFontsOutline( source )[ slug ] || [];\n\t};\n\n\tasync function installFonts( fonts ) {\n\t\tsetIsInstalling( true );\n\t\ttry {\n\t\t\t// Prepare formData to install.\n\t\t\tconst formData = makeFormDataFromFontFamilies( fonts );\n\t\t\t// Install the fonts (upload the font files to the server and create the post in the database).\n\t\t\tconst fontsInstalled = await fetchInstallFonts( formData );\n\t\t\t// Get intersecting font faces between the fonts we tried to installed and the fonts that were installed\n\t\t\t// (to avoid activating a non installed font).\n\t\t\tconst fontToBeActivated = getIntersectingFontFaces(\n\t\t\t\tfontsInstalled,\n\t\t\t\tfonts\n\t\t\t);\n\t\t\t// Activate the font families (add the font families to the global styles).\n\t\t\tactivateCustomFontFamilies( fontToBeActivated );\n\t\t\t// Save the global styles to the database.\n\t\t\tsaveSpecifiedEntityEdits( 'root', 'globalStyles', globalStylesId, [\n\t\t\t\t'settings.typography.fontFamilies',\n\t\t\t] );\n\t\t\trefreshLibrary();\n\t\t\tsetIsInstalling( false );\n\t\t\treturn true;\n\t\t} catch ( e ) {\n\t\t\t// eslint-disable-next-line no-console\n\t\t\tconsole.error( e );\n\t\t\tcreateErrorNotice( __( 'Error installing fonts.' ), {\n\t\t\t\ttype: 'snackbar',\n\t\t\t} );\n\t\t\tsetIsInstalling( false );\n\t\t\treturn false;\n\t\t}\n\t}\n\n\tasync function uninstallFont( font ) {\n\t\ttry {\n\t\t\t// Uninstall the font (remove the font files from the server and the post from the database).\n\t\t\tawait fetchUninstallFonts( [ font ] );\n\t\t\t// Deactivate the font family (remove the font family from the global styles).\n\t\t\tdeactivateFontFamily( font );\n\t\t\t// Save the global styles to the database.\n\t\t\tawait saveSpecifiedEntityEdits(\n\t\t\t\t'root',\n\t\t\t\t'globalStyles',\n\t\t\t\tglobalStylesId,\n\t\t\t\t[ 'settings.typography.fontFamilies' ]\n\t\t\t);\n\t\t\t// Refresh the library (the the library font families from database).\n\t\t\trefreshLibrary();\n\t\t\treturn true;\n\t\t} catch ( e ) {\n\t\t\t// eslint-disable-next-line no-console\n\t\t\tconsole.error( e );\n\t\t\tcreateErrorNotice( __( 'Error uninstalling fonts.' ), {\n\t\t\t\ttype: 'snackbar',\n\t\t\t} );\n\t\t\treturn false;\n\t\t}\n\t}\n\n\tconst deactivateFontFamily = ( font ) => {\n\t\t// If the user doesn't have custom fonts defined, include as custom fonts all the theme fonts\n\t\t// We want to save as active all the theme fonts at the beginning\n\t\tconst initialCustomFonts = fontFamilies?.[ font.source ] ?? [];\n\t\tconst newCustomFonts = initialCustomFonts.filter(\n\t\t\t( f ) => f.slug !== font.slug\n\t\t);\n\t\tsetFontFamilies( {\n\t\t\t...fontFamilies,\n\t\t\t[ font.source ]: newCustomFonts,\n\t\t} );\n\t};\n\n\tconst activateCustomFontFamilies = ( fontsToAdd ) => {\n\t\t// Merge the existing custom fonts with the new fonts.\n\t\tconst newCustomFonts = mergeFontFamilies(\n\t\t\tfontFamilies?.custom,\n\t\t\tfontsToAdd\n\t\t);\n\t\t// Activate the fonts by set the new custom fonts array.\n\t\tsetFontFamilies( {\n\t\t\t...fontFamilies,\n\t\t\tcustom: newCustomFonts,\n\t\t} );\n\t\t// Add custom fonts to the browser.\n\t\tfontsToAdd.forEach( ( font ) => {\n\t\t\tfont.fontFace.forEach( ( face ) => {\n\t\t\t\t// Load font faces just in the iframe because they already are in the document.\n\t\t\t\tloadFontFaceInBrowser(\n\t\t\t\t\tface,\n\t\t\t\t\tgetDisplaySrcFromFontFace( face.src ),\n\t\t\t\t\t'iframe'\n\t\t\t\t);\n\t\t\t} );\n\t\t} );\n\t};\n\n\tconst toggleActivateFont = ( font, face ) => {\n\t\t// If the user doesn't have custom fonts defined, include as custom fonts all the theme fonts\n\t\t// We want to save as active all the theme fonts at the beginning\n\t\tconst initialFonts = fontFamilies?.[ font.source ] ?? [];\n\t\t// Toggles the received font family or font face\n\t\tconst newFonts = toggleFont( font, face, initialFonts );\n\t\t// Updates the font families activated in global settings:\n\t\tsetFontFamilies( {\n\t\t\t...fontFamilies,\n\t\t\t[ font.source ]: newFonts,\n\t\t} );\n\t};\n\n\tconst loadFontFaceAsset = async ( fontFace ) => {\n\t\t// If the font doesn't have a src, don't load it.\n\t\tif ( ! fontFace.src ) return;\n\t\t// Get the src of the font.\n\t\tconst src = getDisplaySrcFromFontFace( fontFace.src, themeUrl );\n\t\t// If the font is already loaded, don't load it again.\n\t\tif ( loadedFontUrls.has( src ) ) return;\n\t\t// Load the font in the browser.\n\t\tloadFontFaceInBrowser( fontFace, src, 'document' );\n\t\t// Add the font to the loaded fonts list.\n\t\tloadedFontUrls.add( src );\n\t};\n\n\treturn (\n\t\t<FontLibraryContext.Provider\n\t\t\tvalue={ {\n\t\t\t\tlibraryFontSelected,\n\t\t\t\thandleSetLibraryFontSelected,\n\t\t\t\tthemeFonts,\n\t\t\t\tbaseThemeFonts,\n\t\t\t\tcustomFonts,\n\t\t\t\tbaseCustomFonts,\n\t\t\t\tisFontActivated,\n\t\t\t\tgetFontFacesActivated,\n\t\t\t\tloadFontFaceAsset,\n\t\t\t\tinstallFonts,\n\t\t\t\tuninstallFont,\n\t\t\t\ttoggleActivateFont,\n\t\t\t\tgetAvailableFontsOutline,\n\t\t\t\tmodalTabOpen,\n\t\t\t\ttoggleModal,\n\t\t\t\trefreshLibrary,\n\t\t\t\tsaveFontFamilies,\n\t\t\t\tfontFamiliesHasChanges,\n\t\t\t\tisResolvingLibrary,\n\t\t\t\thasResolvedLibrary,\n\t\t\t\tisInstalling,\n\t\t\t} }\n\t\t>\n\t\t\t{ children }\n\t\t</FontLibraryContext.Provider>\n\t);\n}\n\nexport default FontLibraryProvider;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["createContext","useState","useEffect","privateApis","blockEditorPrivateApis","useSelect","useDispatch","useEntityRecord","useEntityRecords","store","coreStore","noticesStore","__","fetchInstallFonts","fetchUninstallFonts","fetchFontCollections","fetchFontCollection","unlock","useGlobalSetting","setUIValuesNeeded","mergeFontFamilies","loadFontFaceInBrowser","getDisplaySrcFromFontFace","makeFormDataFromFontFamilies","toggleFont","getIntersectingFontFaces","FontLibraryContext","FontLibraryProvider","children","__experimentalSaveSpecifiedEntityEdits","saveSpecifiedEntityEdits","globalStylesId","select","__experimentalGetCurrentGlobalStylesId","globalStyles","fontFamiliesHasChanges","edits","settings","typography","fontFamilies","createErrorNotice","isInstalling","setIsInstalling","refreshKey","setRefreshKey","refreshLibrary","Date","now","records","libraryPosts","isResolving","isResolvingLibrary","hasResolved","hasResolvedLibrary","libraryFonts","map","post","JSON","parse","content","raw","setFontFamilies","baseFontFamilies","undefined","saveFontFamilies","modalTabOpen","setModalTabOpen","libraryFontSelected","setLibraryFontSelected","baseThemeFonts","theme","f","source","sort","a","b","name","localeCompare","themeFonts","customFonts","custom","baseCustomFonts","handleSetLibraryFontSelected","font","fonts","fontSelected","find","slug","toggleModal","tabName","loadedFontUrls","Set","site","currentTheme","getSite","getCurrentTheme","themeUrl","url","stylesheet","getAvailableFontsOutline","availableFontFamilies","outline","reduce","acc","availableFontFaces","Array","isArray","fontFace","face","fontStyle","fontWeight","getActivatedFontsOutline","isFontActivated","style","weight","includes","getFontFacesActivated","installFonts","formData","fontsInstalled","fontToBeActivated","activateCustomFontFamilies","e","console","error","type","uninstallFont","deactivateFontFamily","_fontFamilies$font$so","initialCustomFonts","newCustomFonts","filter","fontsToAdd","forEach","src","toggleActivateFont","_fontFamilies$font$so2","initialFonts","newFonts","loadFontFaceAsset","has","add","collections","setFontCollections","getFontCollections","response","getFontCollection","id","hasData","collection","data","updatedCollections","createElement","Provider","value"],"sources":["@wordpress/edit-site/src/components/global-styles/font-library-modal/context.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { createContext, useState, useEffect } from '@wordpress/element';\nimport { privateApis as blockEditorPrivateApis } from '@wordpress/block-editor';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport {\n\tuseEntityRecord,\n\tuseEntityRecords,\n\tstore as coreStore,\n} from '@wordpress/core-data';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport {\n\tfetchInstallFonts,\n\tfetchUninstallFonts,\n\tfetchFontCollections,\n\tfetchFontCollection,\n} from './resolvers';\nimport { unlock } from '../../../lock-unlock';\nconst { useGlobalSetting } = unlock( blockEditorPrivateApis );\nimport {\n\tsetUIValuesNeeded,\n\tmergeFontFamilies,\n\tloadFontFaceInBrowser,\n\tgetDisplaySrcFromFontFace,\n\tmakeFormDataFromFontFamilies,\n} from './utils';\nimport { toggleFont } from './utils/toggleFont';\nimport getIntersectingFontFaces from './utils/get-intersecting-font-faces';\n\nexport const FontLibraryContext = createContext( {} );\n\nfunction FontLibraryProvider( { children } ) {\n\tconst { __experimentalSaveSpecifiedEntityEdits: saveSpecifiedEntityEdits } =\n\t\tuseDispatch( coreStore );\n\tconst { globalStylesId } = useSelect( ( select ) => {\n\t\tconst { __experimentalGetCurrentGlobalStylesId } = select( coreStore );\n\t\treturn { globalStylesId: __experimentalGetCurrentGlobalStylesId() };\n\t} );\n\n\tconst globalStyles = useEntityRecord(\n\t\t'root',\n\t\t'globalStyles',\n\t\tglobalStylesId\n\t);\n\tconst fontFamiliesHasChanges =\n\t\t!! globalStyles?.edits?.settings?.typography?.fontFamilies;\n\n\tconst { createErrorNotice } = useDispatch( noticesStore );\n\n\tconst [ isInstalling, setIsInstalling ] = useState( false );\n\tconst [ refreshKey, setRefreshKey ] = useState( 0 );\n\n\tconst refreshLibrary = () => {\n\t\tsetRefreshKey( Date.now() );\n\t};\n\n\tconst {\n\t\trecords: libraryPosts = [],\n\t\tisResolving: isResolvingLibrary,\n\t\thasResolved: hasResolvedLibrary,\n\t} = useEntityRecords( 'postType', 'wp_font_family', { refreshKey } );\n\n\tconst libraryFonts =\n\t\t( libraryPosts || [] ).map( ( post ) =>\n\t\t\tJSON.parse( post.content.raw )\n\t\t) || [];\n\n\t// Global Styles (settings) font families\n\tconst [ fontFamilies, setFontFamilies ] = useGlobalSetting(\n\t\t'typography.fontFamilies'\n\t);\n\t// theme.json file font families\n\tconst [ baseFontFamilies ] = useGlobalSetting(\n\t\t'typography.fontFamilies',\n\t\tundefined,\n\t\t'base'\n\t);\n\n\t// Save font families to the global styles post in the database.\n\tconst saveFontFamilies = () => {\n\t\tsaveSpecifiedEntityEdits( 'root', 'globalStyles', globalStylesId, [\n\t\t\t'settings.typography.fontFamilies',\n\t\t] );\n\t};\n\n\t// Library Fonts\n\tconst [ modalTabOpen, setModalTabOpen ] = useState( false );\n\tconst [ libraryFontSelected, setLibraryFontSelected ] = useState( null );\n\n\tconst baseThemeFonts = baseFontFamilies?.theme\n\t\t? baseFontFamilies.theme\n\t\t\t\t.map( ( f ) => setUIValuesNeeded( f, { source: 'theme' } ) )\n\t\t\t\t.sort( ( a, b ) => a.name.localeCompare( b.name ) )\n\t\t: [];\n\n\tconst themeFonts = fontFamilies?.theme\n\t\t? fontFamilies.theme\n\t\t\t\t.map( ( f ) => setUIValuesNeeded( f, { source: 'theme' } ) )\n\t\t\t\t.sort( ( a, b ) => a.name.localeCompare( b.name ) )\n\t\t: [];\n\n\tconst customFonts = fontFamilies?.custom\n\t\t? fontFamilies.custom\n\t\t\t\t.map( ( f ) => setUIValuesNeeded( f, { source: 'custom' } ) )\n\t\t\t\t.sort( ( a, b ) => a.name.localeCompare( b.name ) )\n\t\t: [];\n\n\tconst baseCustomFonts = libraryFonts\n\t\t? libraryFonts\n\t\t\t\t.map( ( f ) => setUIValuesNeeded( f, { source: 'custom' } ) )\n\t\t\t\t.sort( ( a, b ) => a.name.localeCompare( b.name ) )\n\t\t: [];\n\n\tuseEffect( () => {\n\t\tif ( ! modalTabOpen ) {\n\t\t\tsetLibraryFontSelected( null );\n\t\t}\n\t}, [ modalTabOpen ] );\n\n\tconst handleSetLibraryFontSelected = ( font ) => {\n\t\t// If font is null, reset the selected font\n\t\tif ( ! font ) {\n\t\t\tsetLibraryFontSelected( null );\n\t\t\treturn;\n\t\t}\n\n\t\tconst fonts =\n\t\t\tfont.source === 'theme' ? baseThemeFonts : baseCustomFonts;\n\n\t\t// Tries to find the font in the installed fonts\n\t\tconst fontSelected = fonts.find( ( f ) => f.slug === font.slug );\n\t\t// If the font is not found (it is only defined in custom styles), use the font from custom styles\n\t\tsetLibraryFontSelected( {\n\t\t\t...( fontSelected || font ),\n\t\t\tsource: font.source,\n\t\t} );\n\t};\n\n\tconst toggleModal = ( tabName ) => {\n\t\tsetModalTabOpen( tabName || null );\n\t};\n\n\t// Demo\n\tconst [ loadedFontUrls ] = useState( new Set() );\n\n\t// Theme data\n\tconst { site, currentTheme } = useSelect( ( select ) => {\n\t\treturn {\n\t\t\tsite: select( coreStore ).getSite(),\n\t\t\tcurrentTheme: select( coreStore ).getCurrentTheme(),\n\t\t};\n\t} );\n\tconst themeUrl =\n\t\tsite?.url + '/wp-content/themes/' + currentTheme?.stylesheet;\n\n\tconst getAvailableFontsOutline = ( availableFontFamilies ) => {\n\t\tconst outline = availableFontFamilies.reduce( ( acc, font ) => {\n\t\t\tconst availableFontFaces = Array.isArray( font?.fontFace )\n\t\t\t\t? font?.fontFace.map(\n\t\t\t\t\t\t( face ) => `${ face.fontStyle + face.fontWeight }`\n\t\t\t\t )\n\t\t\t\t: [ 'normal400' ]; // If the font doesn't have fontFace, we assume it is a system font and we add the defaults: normal 400\n\n\t\t\tacc[ font.slug ] = availableFontFaces;\n\t\t\treturn acc;\n\t\t}, {} );\n\t\treturn outline;\n\t};\n\n\tconst getActivatedFontsOutline = ( source ) => {\n\t\tswitch ( source ) {\n\t\t\tcase 'theme':\n\t\t\t\treturn getAvailableFontsOutline( themeFonts );\n\t\t\tcase 'custom':\n\t\t\tdefault:\n\t\t\t\treturn getAvailableFontsOutline( customFonts );\n\t\t}\n\t};\n\n\tconst isFontActivated = ( slug, style, weight, source ) => {\n\t\tif ( ! style && ! weight ) {\n\t\t\treturn !! getActivatedFontsOutline( source )[ slug ];\n\t\t}\n\t\treturn !! getActivatedFontsOutline( source )[ slug ]?.includes(\n\t\t\tstyle + weight\n\t\t);\n\t};\n\n\tconst getFontFacesActivated = ( slug, source ) => {\n\t\treturn getActivatedFontsOutline( source )[ slug ] || [];\n\t};\n\n\tasync function installFonts( fonts ) {\n\t\tsetIsInstalling( true );\n\t\ttry {\n\t\t\t// Prepare formData to install.\n\t\t\tconst formData = makeFormDataFromFontFamilies( fonts );\n\t\t\t// Install the fonts (upload the font files to the server and create the post in the database).\n\t\t\tconst fontsInstalled = await fetchInstallFonts( formData );\n\t\t\t// Get intersecting font faces between the fonts we tried to installed and the fonts that were installed\n\t\t\t// (to avoid activating a non installed font).\n\t\t\tconst fontToBeActivated = getIntersectingFontFaces(\n\t\t\t\tfontsInstalled,\n\t\t\t\tfonts\n\t\t\t);\n\t\t\t// Activate the font families (add the font families to the global styles).\n\t\t\tactivateCustomFontFamilies( fontToBeActivated );\n\t\t\t// Save the global styles to the database.\n\t\t\tsaveSpecifiedEntityEdits( 'root', 'globalStyles', globalStylesId, [\n\t\t\t\t'settings.typography.fontFamilies',\n\t\t\t] );\n\t\t\trefreshLibrary();\n\t\t\tsetIsInstalling( false );\n\t\t\treturn true;\n\t\t} catch ( e ) {\n\t\t\t// eslint-disable-next-line no-console\n\t\t\tconsole.error( e );\n\t\t\tcreateErrorNotice( __( 'Error installing fonts.' ), {\n\t\t\t\ttype: 'snackbar',\n\t\t\t} );\n\t\t\tsetIsInstalling( false );\n\t\t\treturn false;\n\t\t}\n\t}\n\n\tasync function uninstallFont( font ) {\n\t\ttry {\n\t\t\t// Uninstall the font (remove the font files from the server and the post from the database).\n\t\t\tawait fetchUninstallFonts( [ font ] );\n\t\t\t// Deactivate the font family (remove the font family from the global styles).\n\t\t\tdeactivateFontFamily( font );\n\t\t\t// Save the global styles to the database.\n\t\t\tawait saveSpecifiedEntityEdits(\n\t\t\t\t'root',\n\t\t\t\t'globalStyles',\n\t\t\t\tglobalStylesId,\n\t\t\t\t[ 'settings.typography.fontFamilies' ]\n\t\t\t);\n\t\t\t// Refresh the library (the the library font families from database).\n\t\t\trefreshLibrary();\n\t\t\treturn true;\n\t\t} catch ( e ) {\n\t\t\t// eslint-disable-next-line no-console\n\t\t\tconsole.error( e );\n\t\t\tcreateErrorNotice( __( 'Error uninstalling fonts.' ), {\n\t\t\t\ttype: 'snackbar',\n\t\t\t} );\n\t\t\treturn false;\n\t\t}\n\t}\n\n\tconst deactivateFontFamily = ( font ) => {\n\t\t// If the user doesn't have custom fonts defined, include as custom fonts all the theme fonts\n\t\t// We want to save as active all the theme fonts at the beginning\n\t\tconst initialCustomFonts = fontFamilies?.[ font.source ] ?? [];\n\t\tconst newCustomFonts = initialCustomFonts.filter(\n\t\t\t( f ) => f.slug !== font.slug\n\t\t);\n\t\tsetFontFamilies( {\n\t\t\t...fontFamilies,\n\t\t\t[ font.source ]: newCustomFonts,\n\t\t} );\n\t};\n\n\tconst activateCustomFontFamilies = ( fontsToAdd ) => {\n\t\t// Merge the existing custom fonts with the new fonts.\n\t\tconst newCustomFonts = mergeFontFamilies(\n\t\t\tfontFamilies?.custom,\n\t\t\tfontsToAdd\n\t\t);\n\t\t// Activate the fonts by set the new custom fonts array.\n\t\tsetFontFamilies( {\n\t\t\t...fontFamilies,\n\t\t\tcustom: newCustomFonts,\n\t\t} );\n\t\t// Add custom fonts to the browser.\n\t\tfontsToAdd.forEach( ( font ) => {\n\t\t\tfont.fontFace.forEach( ( face ) => {\n\t\t\t\t// Load font faces just in the iframe because they already are in the document.\n\t\t\t\tloadFontFaceInBrowser(\n\t\t\t\t\tface,\n\t\t\t\t\tgetDisplaySrcFromFontFace( face.src ),\n\t\t\t\t\t'iframe'\n\t\t\t\t);\n\t\t\t} );\n\t\t} );\n\t};\n\n\tconst toggleActivateFont = ( font, face ) => {\n\t\t// If the user doesn't have custom fonts defined, include as custom fonts all the theme fonts\n\t\t// We want to save as active all the theme fonts at the beginning\n\t\tconst initialFonts = fontFamilies?.[ font.source ] ?? [];\n\t\t// Toggles the received font family or font face\n\t\tconst newFonts = toggleFont( font, face, initialFonts );\n\t\t// Updates the font families activated in global settings:\n\t\tsetFontFamilies( {\n\t\t\t...fontFamilies,\n\t\t\t[ font.source ]: newFonts,\n\t\t} );\n\t};\n\n\tconst loadFontFaceAsset = async ( fontFace ) => {\n\t\t// If the font doesn't have a src, don't load it.\n\t\tif ( ! fontFace.src ) return;\n\t\t// Get the src of the font.\n\t\tconst src = getDisplaySrcFromFontFace( fontFace.src, themeUrl );\n\t\t// If the font is already loaded, don't load it again.\n\t\tif ( loadedFontUrls.has( src ) ) return;\n\t\t// Load the font in the browser.\n\t\tloadFontFaceInBrowser( fontFace, src, 'document' );\n\t\t// Add the font to the loaded fonts list.\n\t\tloadedFontUrls.add( src );\n\t};\n\n\t// Font Collections\n\tconst [ collections, setFontCollections ] = useState( [] );\n\tconst getFontCollections = async () => {\n\t\tconst response = await fetchFontCollections();\n\t\tsetFontCollections( response );\n\t};\n\tconst getFontCollection = async ( id ) => {\n\t\tconst hasData = !! collections.find(\n\t\t\t( collection ) => collection.id === id\n\t\t)?.data;\n\t\tif ( hasData ) return;\n\t\tconst response = await fetchFontCollection( id );\n\t\tconst updatedCollections = collections.map( ( collection ) =>\n\t\t\tcollection.id === id\n\t\t\t\t? { ...collection, data: { ...response?.data } }\n\t\t\t\t: collection\n\t\t);\n\t\tsetFontCollections( updatedCollections );\n\t};\n\n\tuseEffect( () => {\n\t\tgetFontCollections();\n\t}, [] );\n\n\treturn (\n\t\t<FontLibraryContext.Provider\n\t\t\tvalue={ {\n\t\t\t\tlibraryFontSelected,\n\t\t\t\thandleSetLibraryFontSelected,\n\t\t\t\tthemeFonts,\n\t\t\t\tbaseThemeFonts,\n\t\t\t\tcustomFonts,\n\t\t\t\tbaseCustomFonts,\n\t\t\t\tisFontActivated,\n\t\t\t\tgetFontFacesActivated,\n\t\t\t\tloadFontFaceAsset,\n\t\t\t\tinstallFonts,\n\t\t\t\tuninstallFont,\n\t\t\t\ttoggleActivateFont,\n\t\t\t\tgetAvailableFontsOutline,\n\t\t\t\tmodalTabOpen,\n\t\t\t\ttoggleModal,\n\t\t\t\trefreshLibrary,\n\t\t\t\tsaveFontFamilies,\n\t\t\t\tfontFamiliesHasChanges,\n\t\t\t\tisResolvingLibrary,\n\t\t\t\thasResolvedLibrary,\n\t\t\t\tisInstalling,\n\t\t\t\tcollections,\n\t\t\t\tgetFontCollection,\n\t\t\t} }\n\t\t>\n\t\t\t{ children }\n\t\t</FontLibraryContext.Provider>\n\t);\n}\n\nexport default FontLibraryProvider;\n"],"mappings":"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"}
|
|
@@ -3,17 +3,17 @@ import { createElement } from "@wordpress/element";
|
|
|
3
3
|
* WordPress dependencies
|
|
4
4
|
*/
|
|
5
5
|
import { _n } from '@wordpress/i18n';
|
|
6
|
-
import { __experimentalText as Text, Button, Flex, FlexItem } from '@wordpress/components';
|
|
6
|
+
import { __experimentalText as Text, Button, Flex, FlexItem, Icon } from '@wordpress/components';
|
|
7
7
|
|
|
8
8
|
/**
|
|
9
9
|
* Internal dependencies
|
|
10
10
|
*/
|
|
11
11
|
import FontDemo from './font-demo';
|
|
12
|
-
import {
|
|
12
|
+
import { getFamilyPreviewStyle } from './utils/preview-styles';
|
|
13
|
+
import { chevronRight } from '@wordpress/icons';
|
|
13
14
|
function FontCard({
|
|
14
15
|
font,
|
|
15
16
|
onClick,
|
|
16
|
-
actionHandler,
|
|
17
17
|
variantsText
|
|
18
18
|
}) {
|
|
19
19
|
const fakeFontFace = {
|
|
@@ -23,7 +23,7 @@ function FontCard({
|
|
|
23
23
|
fake: true
|
|
24
24
|
};
|
|
25
25
|
const displayFontFace = font.fontFace && font.fontFace.length ? font?.fontFace?.find(face => face.fontStyle === 'normal' && face.fontWeight === '400') || font.fontFace[0] : fakeFontFace;
|
|
26
|
-
const demoStyle =
|
|
26
|
+
const demoStyle = getFamilyPreviewStyle(font);
|
|
27
27
|
const variantsCount = font.fontFace?.length || 1;
|
|
28
28
|
const style = {
|
|
29
29
|
cursor: !!onClick ? 'pointer' : 'default'
|
|
@@ -36,6 +36,7 @@ function FontCard({
|
|
|
36
36
|
justify: "space-between",
|
|
37
37
|
wrap: false
|
|
38
38
|
}, createElement(FontDemo, {
|
|
39
|
+
customPreviewUrl: font.preview,
|
|
39
40
|
fontFace: displayFontFace,
|
|
40
41
|
text: font.name,
|
|
41
42
|
style: demoStyle
|
|
@@ -43,7 +44,9 @@ function FontCard({
|
|
|
43
44
|
justify: "flex-end"
|
|
44
45
|
}, createElement(FlexItem, null, createElement(Text, {
|
|
45
46
|
className: "font-library-modal__font-card__count"
|
|
46
|
-
}, variantsText || variantsCount + ' ' + _n('variant', 'variants', variantsCount))), createElement(FlexItem, null,
|
|
47
|
+
}, variantsText || variantsCount + ' ' + _n('variant', 'variants', variantsCount))), createElement(FlexItem, null, createElement(Icon, {
|
|
48
|
+
icon: chevronRight
|
|
49
|
+
})))));
|
|
47
50
|
}
|
|
48
51
|
export default FontCard;
|
|
49
52
|
//# sourceMappingURL=font-card.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_n","__experimentalText","Text","Button","Flex","FlexItem","FontDemo","
|
|
1
|
+
{"version":3,"names":["_n","__experimentalText","Text","Button","Flex","FlexItem","Icon","FontDemo","getFamilyPreviewStyle","chevronRight","FontCard","font","onClick","variantsText","fakeFontFace","fontStyle","fontWeight","fontFamily","fake","displayFontFace","fontFace","length","find","face","demoStyle","variantsCount","style","cursor","createElement","className","justify","wrap","customPreviewUrl","preview","text","name","icon"],"sources":["@wordpress/edit-site/src/components/global-styles/font-library-modal/font-card.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { _n } from '@wordpress/i18n';\nimport {\n\t__experimentalText as Text,\n\tButton,\n\tFlex,\n\tFlexItem,\n\tIcon,\n} from '@wordpress/components';\n\n/**\n * Internal dependencies\n */\nimport FontDemo from './font-demo';\nimport { getFamilyPreviewStyle } from './utils/preview-styles';\nimport { chevronRight } from '@wordpress/icons';\n\nfunction FontCard( { font, onClick, variantsText } ) {\n\tconst fakeFontFace = {\n\t\tfontStyle: 'normal',\n\t\tfontWeight: '400',\n\t\tfontFamily: font.fontFamily,\n\t\tfake: true,\n\t};\n\n\tconst displayFontFace =\n\t\tfont.fontFace && font.fontFace.length\n\t\t\t? font?.fontFace?.find(\n\t\t\t\t\t( face ) =>\n\t\t\t\t\t\tface.fontStyle === 'normal' && face.fontWeight === '400'\n\t\t\t ) || font.fontFace[ 0 ]\n\t\t\t: fakeFontFace;\n\n\tconst demoStyle = getFamilyPreviewStyle( font );\n\n\tconst variantsCount = font.fontFace?.length || 1;\n\n\tconst style = {\n\t\tcursor: !! onClick ? 'pointer' : 'default',\n\t};\n\n\treturn (\n\t\t<Button\n\t\t\tonClick={ onClick }\n\t\t\tstyle={ style }\n\t\t\tclassName=\"font-library-modal__font-card\"\n\t\t>\n\t\t\t<Flex justify=\"space-between\" wrap={ false }>\n\t\t\t\t<FontDemo\n\t\t\t\t\tcustomPreviewUrl={ font.preview }\n\t\t\t\t\tfontFace={ displayFontFace }\n\t\t\t\t\ttext={ font.name }\n\t\t\t\t\tstyle={ demoStyle }\n\t\t\t\t/>\n\t\t\t\t<Flex justify=\"flex-end\">\n\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t<Text className=\"font-library-modal__font-card__count\">\n\t\t\t\t\t\t\t{ variantsText ||\n\t\t\t\t\t\t\t\tvariantsCount +\n\t\t\t\t\t\t\t\t\t' ' +\n\t\t\t\t\t\t\t\t\t_n( 'variant', 'variants', variantsCount ) }\n\t\t\t\t\t\t</Text>\n\t\t\t\t\t</FlexItem>\n\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t<Icon icon={ chevronRight } />\n\t\t\t\t\t</FlexItem>\n\t\t\t\t</Flex>\n\t\t\t</Flex>\n\t\t</Button>\n\t);\n}\n\nexport default FontCard;\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,EAAE,QAAQ,iBAAiB;AACpC,SACCC,kBAAkB,IAAIC,IAAI,EAC1BC,MAAM,EACNC,IAAI,EACJC,QAAQ,EACRC,IAAI,QACE,uBAAuB;;AAE9B;AACA;AACA;AACA,OAAOC,QAAQ,MAAM,aAAa;AAClC,SAASC,qBAAqB,QAAQ,wBAAwB;AAC9D,SAASC,YAAY,QAAQ,kBAAkB;AAE/C,SAASC,QAAQA,CAAE;EAAEC,IAAI;EAAEC,OAAO;EAAEC;AAAa,CAAC,EAAG;EACpD,MAAMC,YAAY,GAAG;IACpBC,SAAS,EAAE,QAAQ;IACnBC,UAAU,EAAE,KAAK;IACjBC,UAAU,EAAEN,IAAI,CAACM,UAAU;IAC3BC,IAAI,EAAE;EACP,CAAC;EAED,MAAMC,eAAe,GACpBR,IAAI,CAACS,QAAQ,IAAIT,IAAI,CAACS,QAAQ,CAACC,MAAM,GAClCV,IAAI,EAAES,QAAQ,EAAEE,IAAI,CAClBC,IAAI,IACLA,IAAI,CAACR,SAAS,KAAK,QAAQ,IAAIQ,IAAI,CAACP,UAAU,KAAK,KACpD,CAAC,IAAIL,IAAI,CAACS,QAAQ,CAAE,CAAC,CAAE,GACvBN,YAAY;EAEhB,MAAMU,SAAS,GAAGhB,qBAAqB,CAAEG,IAAK,CAAC;EAE/C,MAAMc,aAAa,GAAGd,IAAI,CAACS,QAAQ,EAAEC,MAAM,IAAI,CAAC;EAEhD,MAAMK,KAAK,GAAG;IACbC,MAAM,EAAE,CAAC,CAAEf,OAAO,GAAG,SAAS,GAAG;EAClC,CAAC;EAED,OACCgB,aAAA,CAACzB,MAAM;IACNS,OAAO,EAAGA,OAAS;IACnBc,KAAK,EAAGA,KAAO;IACfG,SAAS,EAAC;EAA+B,GAEzCD,aAAA,CAACxB,IAAI;IAAC0B,OAAO,EAAC,eAAe;IAACC,IAAI,EAAG;EAAO,GAC3CH,aAAA,CAACrB,QAAQ;IACRyB,gBAAgB,EAAGrB,IAAI,CAACsB,OAAS;IACjCb,QAAQ,EAAGD,eAAiB;IAC5Be,IAAI,EAAGvB,IAAI,CAACwB,IAAM;IAClBT,KAAK,EAAGF;EAAW,CACnB,CAAC,EACFI,aAAA,CAACxB,IAAI;IAAC0B,OAAO,EAAC;EAAU,GACvBF,aAAA,CAACvB,QAAQ,QACRuB,aAAA,CAAC1B,IAAI;IAAC2B,SAAS,EAAC;EAAsC,GACnDhB,YAAY,IACbY,aAAa,GACZ,GAAG,GACHzB,EAAE,CAAE,SAAS,EAAE,UAAU,EAAEyB,aAAc,CACtC,CACG,CAAC,EACXG,aAAA,CAACvB,QAAQ,QACRuB,aAAA,CAACtB,IAAI;IAAC8B,IAAI,EAAG3B;EAAc,CAAE,CACpB,CACL,CACD,CACC,CAAC;AAEX;AAEA,eAAeC,QAAQ"}
|