@wordpress/block-library 8.0.0 → 8.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +2 -0
- package/build/categories/edit.js +1 -1
- package/build/categories/edit.js.map +1 -1
- package/build/cover/edit/inspector-controls.js +1 -1
- package/build/cover/edit/inspector-controls.js.map +1 -1
- package/build/freeform/edit.js +21 -6
- package/build/freeform/edit.js.map +1 -1
- package/build/freeform/modal.js +97 -0
- package/build/freeform/modal.js.map +1 -0
- package/build/gallery/edit.js +13 -2
- package/build/gallery/edit.js.map +1 -1
- package/build/gallery/gallery.js +2 -16
- package/build/gallery/gallery.js.map +1 -1
- package/build/image/image.js +1 -0
- package/build/image/image.js.map +1 -1
- package/build/media-text/edit.js +1 -0
- package/build/media-text/edit.js.map +1 -1
- package/build/missing/edit.native.js +2 -2
- package/build/missing/edit.native.js.map +1 -1
- package/build/navigation/edit/index.js +3 -4
- package/build/navigation/edit/index.js.map +1 -1
- package/build/navigation/edit/menu-inspector-controls.js +29 -7
- package/build/navigation/edit/menu-inspector-controls.js.map +1 -1
- package/build/navigation/edit/navigation-menu-selector.js +11 -8
- package/build/navigation/edit/navigation-menu-selector.js.map +1 -1
- package/build/navigation/edit/utils.js +81 -0
- package/build/navigation/edit/utils.js.map +1 -1
- package/build/navigation-link/edit.js +4 -58
- package/build/navigation-link/edit.js.map +1 -1
- package/build/navigation-submenu/edit.js +7 -72
- package/build/navigation-submenu/edit.js.map +1 -1
- package/build/page-list/edit.js +16 -15
- package/build/page-list/edit.js.map +1 -1
- package/build/page-list/index.js +29 -2
- package/build/page-list/index.js.map +1 -1
- package/build/page-list-item/edit.js +9 -5
- package/build/page-list-item/edit.js.map +1 -1
- package/build/post-featured-image/overlay.js +0 -1
- package/build/post-featured-image/overlay.js.map +1 -1
- package/build/query/edit/index.js +2 -1
- package/build/query/edit/index.js.map +1 -1
- package/build/query/edit/inspector-controls/index.js +10 -5
- package/build/query/edit/inspector-controls/index.js.map +1 -1
- package/build/query/edit/inspector-controls/taxonomy-controls.js +101 -37
- package/build/query/edit/inspector-controls/taxonomy-controls.js.map +1 -1
- package/build/query/edit/query-content.js +2 -3
- package/build/query/edit/query-content.js.map +1 -1
- package/build/query/edit/query-placeholder.js +17 -12
- package/build/query/edit/query-placeholder.js.map +1 -1
- package/build/query/utils.js +73 -1
- package/build/query/utils.js.map +1 -1
- package/build/search/edit.js +2 -2
- package/build/search/edit.js.map +1 -1
- package/build/social-link/edit.js.map +1 -1
- package/build/social-links/edit.js +0 -1
- package/build/social-links/edit.js.map +1 -1
- package/build/table-of-contents/edit.js +1 -1
- package/build/table-of-contents/edit.js.map +1 -1
- package/build/template-part/edit/advanced-controls.js +11 -1
- package/build/template-part/edit/advanced-controls.js.map +1 -1
- package/build/template-part/edit/import-controls.js +160 -0
- package/build/template-part/edit/import-controls.js.map +1 -0
- package/build/template-part/edit/index.js +2 -1
- package/build/template-part/edit/index.js.map +1 -1
- package/build/template-part/edit/utils/transformers.js +48 -0
- package/build/template-part/edit/utils/transformers.js.map +1 -0
- package/build-module/categories/edit.js +1 -1
- package/build-module/categories/edit.js.map +1 -1
- package/build-module/cover/edit/inspector-controls.js +3 -3
- package/build-module/cover/edit/inspector-controls.js.map +1 -1
- package/build-module/freeform/edit.js +22 -8
- package/build-module/freeform/edit.js.map +1 -1
- package/build-module/freeform/modal.js +90 -0
- package/build-module/freeform/modal.js.map +1 -0
- package/build-module/gallery/edit.js +14 -3
- package/build-module/gallery/edit.js.map +1 -1
- package/build-module/gallery/gallery.js +3 -16
- package/build-module/gallery/gallery.js.map +1 -1
- package/build-module/image/image.js +1 -0
- package/build-module/image/image.js.map +1 -1
- package/build-module/media-text/edit.js +1 -0
- package/build-module/media-text/edit.js.map +1 -1
- package/build-module/missing/edit.native.js +2 -2
- package/build-module/missing/edit.native.js.map +1 -1
- package/build-module/navigation/edit/index.js +3 -4
- package/build-module/navigation/edit/index.js.map +1 -1
- package/build-module/navigation/edit/menu-inspector-controls.js +30 -9
- package/build-module/navigation/edit/menu-inspector-controls.js.map +1 -1
- package/build-module/navigation/edit/navigation-menu-selector.js +12 -9
- package/build-module/navigation/edit/navigation-menu-selector.js.map +1 -1
- package/build-module/navigation/edit/utils.js +75 -0
- package/build-module/navigation/edit/utils.js.map +1 -1
- package/build-module/navigation-link/edit.js +4 -59
- package/build-module/navigation-link/edit.js.map +1 -1
- package/build-module/navigation-submenu/edit.js +6 -72
- package/build-module/navigation-submenu/edit.js.map +1 -1
- package/build-module/page-list/edit.js +17 -15
- package/build-module/page-list/edit.js.map +1 -1
- package/build-module/page-list/index.js +30 -3
- package/build-module/page-list/index.js.map +1 -1
- package/build-module/page-list-item/edit.js +9 -6
- package/build-module/page-list-item/edit.js.map +1 -1
- package/build-module/post-featured-image/overlay.js +0 -1
- package/build-module/post-featured-image/overlay.js.map +1 -1
- package/build-module/query/edit/index.js +2 -1
- package/build-module/query/edit/index.js.map +1 -1
- package/build-module/query/edit/inspector-controls/index.js +10 -5
- package/build-module/query/edit/inspector-controls/index.js.map +1 -1
- package/build-module/query/edit/inspector-controls/taxonomy-controls.js +99 -35
- package/build-module/query/edit/inspector-controls/taxonomy-controls.js.map +1 -1
- package/build-module/query/edit/query-content.js +1 -1
- package/build-module/query/edit/query-content.js.map +1 -1
- package/build-module/query/edit/query-placeholder.js +16 -12
- package/build-module/query/edit/query-placeholder.js.map +1 -1
- package/build-module/query/utils.js +69 -0
- package/build-module/query/utils.js.map +1 -1
- package/build-module/search/edit.js +2 -2
- package/build-module/search/edit.js.map +1 -1
- package/build-module/social-link/edit.js +2 -2
- package/build-module/social-link/edit.js.map +1 -1
- package/build-module/social-links/edit.js +0 -1
- package/build-module/social-links/edit.js.map +1 -1
- package/build-module/table-of-contents/edit.js +1 -1
- package/build-module/table-of-contents/edit.js.map +1 -1
- package/build-module/template-part/edit/advanced-controls.js +10 -1
- package/build-module/template-part/edit/advanced-controls.js.map +1 -1
- package/build-module/template-part/edit/import-controls.js +146 -0
- package/build-module/template-part/edit/import-controls.js.map +1 -0
- package/build-module/template-part/edit/index.js +2 -1
- package/build-module/template-part/edit/index.js.map +1 -1
- package/build-module/template-part/edit/utils/transformers.js +40 -0
- package/build-module/template-part/edit/utils/transformers.js.map +1 -0
- package/build-style/archives/editor-rtl.css +3 -3
- package/build-style/archives/editor.css +3 -3
- package/build-style/archives/style-rtl.css +3 -3
- package/build-style/archives/style.css +3 -3
- package/build-style/audio/editor-rtl.css +3 -3
- package/build-style/audio/editor.css +3 -3
- package/build-style/audio/style-rtl.css +3 -3
- package/build-style/audio/style.css +3 -3
- package/build-style/audio/theme-rtl.css +3 -3
- package/build-style/audio/theme.css +3 -3
- package/build-style/avatar/editor-rtl.css +3 -3
- package/build-style/avatar/editor.css +3 -3
- package/build-style/avatar/style-rtl.css +3 -3
- package/build-style/avatar/style.css +3 -3
- package/build-style/block/editor-rtl.css +3 -3
- package/build-style/block/editor.css +3 -3
- package/build-style/button/editor-rtl.css +3 -3
- package/build-style/button/editor.css +3 -3
- package/build-style/button/style-rtl.css +3 -3
- package/build-style/button/style.css +3 -3
- package/build-style/buttons/editor-rtl.css +3 -3
- package/build-style/buttons/editor.css +3 -3
- package/build-style/buttons/style-rtl.css +3 -3
- package/build-style/buttons/style.css +3 -3
- package/build-style/calendar/style-rtl.css +3 -3
- package/build-style/calendar/style.css +3 -3
- package/build-style/categories/editor-rtl.css +3 -3
- package/build-style/categories/editor.css +3 -3
- package/build-style/categories/style-rtl.css +3 -3
- package/build-style/categories/style.css +3 -3
- package/build-style/classic-rtl.css +3 -3
- package/build-style/classic.css +3 -3
- package/build-style/code/editor-rtl.css +3 -3
- package/build-style/code/editor.css +3 -3
- package/build-style/code/style-rtl.css +3 -3
- package/build-style/code/style.css +3 -3
- package/build-style/code/theme-rtl.css +3 -3
- package/build-style/code/theme.css +3 -3
- package/build-style/columns/editor-rtl.css +3 -3
- package/build-style/columns/editor.css +3 -3
- package/build-style/columns/style-rtl.css +3 -3
- package/build-style/columns/style.css +3 -3
- package/build-style/comment-author-avatar/editor-rtl.css +3 -3
- package/build-style/comment-author-avatar/editor.css +3 -3
- package/build-style/comment-content/style-rtl.css +3 -3
- package/build-style/comment-content/style.css +3 -3
- package/build-style/comment-template/style-rtl.css +3 -3
- package/build-style/comment-template/style.css +3 -3
- package/build-style/comments/editor-rtl.css +3 -3
- package/build-style/comments/editor.css +3 -3
- package/build-style/comments/style-rtl.css +3 -3
- package/build-style/comments/style.css +3 -3
- package/build-style/comments-pagination/editor-rtl.css +3 -3
- package/build-style/comments-pagination/editor.css +3 -3
- package/build-style/comments-pagination/style-rtl.css +3 -3
- package/build-style/comments-pagination/style.css +3 -3
- package/build-style/comments-pagination-numbers/editor-rtl.css +3 -3
- package/build-style/comments-pagination-numbers/editor.css +3 -3
- package/build-style/comments-title/editor-rtl.css +3 -3
- package/build-style/comments-title/editor.css +3 -3
- package/build-style/common-rtl.css +3 -3
- package/build-style/common.css +3 -3
- package/build-style/cover/editor-rtl.css +3 -3
- package/build-style/cover/editor.css +3 -3
- package/build-style/cover/style-rtl.css +3 -3
- package/build-style/cover/style.css +3 -3
- package/build-style/editor-elements-rtl.css +3 -3
- package/build-style/editor-elements.css +3 -3
- package/build-style/editor-rtl.css +7 -9
- package/build-style/editor.css +7 -9
- package/build-style/elements-rtl.css +3 -3
- package/build-style/elements.css +3 -3
- package/build-style/embed/editor-rtl.css +3 -3
- package/build-style/embed/editor.css +3 -3
- package/build-style/embed/style-rtl.css +3 -3
- package/build-style/embed/style.css +3 -3
- package/build-style/embed/theme-rtl.css +3 -3
- package/build-style/embed/theme.css +3 -3
- package/build-style/file/editor-rtl.css +3 -3
- package/build-style/file/editor.css +3 -3
- package/build-style/file/style-rtl.css +3 -3
- package/build-style/file/style.css +3 -3
- package/build-style/freeform/editor-rtl.css +3 -3
- package/build-style/freeform/editor.css +3 -3
- package/build-style/gallery/editor-rtl.css +3 -3
- package/build-style/gallery/editor.css +3 -3
- package/build-style/gallery/style-rtl.css +3 -3
- package/build-style/gallery/style.css +3 -3
- package/build-style/gallery/theme-rtl.css +3 -3
- package/build-style/gallery/theme.css +3 -3
- package/build-style/group/editor-rtl.css +3 -3
- package/build-style/group/editor.css +3 -3
- package/build-style/group/style-rtl.css +3 -3
- package/build-style/group/style.css +3 -3
- package/build-style/group/theme-rtl.css +3 -3
- package/build-style/group/theme.css +3 -3
- package/build-style/heading/style-rtl.css +3 -3
- package/build-style/heading/style.css +3 -3
- package/build-style/html/editor-rtl.css +3 -3
- package/build-style/html/editor.css +3 -3
- package/build-style/image/editor-rtl.css +3 -3
- package/build-style/image/editor.css +3 -3
- package/build-style/image/style-rtl.css +3 -3
- package/build-style/image/style.css +3 -3
- package/build-style/image/theme-rtl.css +3 -3
- package/build-style/image/theme.css +3 -3
- package/build-style/latest-comments/style-rtl.css +3 -3
- package/build-style/latest-comments/style.css +3 -3
- package/build-style/latest-posts/editor-rtl.css +3 -3
- package/build-style/latest-posts/editor.css +3 -3
- package/build-style/latest-posts/style-rtl.css +3 -3
- package/build-style/latest-posts/style.css +3 -3
- package/build-style/list/style-rtl.css +3 -3
- package/build-style/list/style.css +3 -3
- package/build-style/media-text/editor-rtl.css +3 -3
- package/build-style/media-text/editor.css +3 -3
- package/build-style/media-text/style-rtl.css +3 -3
- package/build-style/media-text/style.css +3 -3
- package/build-style/more/editor-rtl.css +3 -3
- package/build-style/more/editor.css +3 -3
- package/build-style/navigation/editor-rtl.css +3 -9
- package/build-style/navigation/editor.css +3 -9
- package/build-style/navigation/style-rtl.css +3 -4
- package/build-style/navigation/style.css +3 -4
- package/build-style/navigation-link/editor-rtl.css +3 -3
- package/build-style/navigation-link/editor.css +3 -3
- package/build-style/navigation-link/style-rtl.css +3 -3
- package/build-style/navigation-link/style.css +3 -3
- package/build-style/navigation-submenu/editor-rtl.css +3 -3
- package/build-style/navigation-submenu/editor.css +3 -3
- package/build-style/nextpage/editor-rtl.css +3 -3
- package/build-style/nextpage/editor.css +3 -3
- package/build-style/page-list/editor-rtl.css +7 -3
- package/build-style/page-list/editor.css +7 -3
- package/build-style/page-list/style-rtl.css +3 -3
- package/build-style/page-list/style.css +3 -3
- package/build-style/paragraph/editor-rtl.css +3 -3
- package/build-style/paragraph/editor.css +3 -3
- package/build-style/paragraph/style-rtl.css +3 -3
- package/build-style/paragraph/style.css +3 -3
- package/build-style/post-author/style-rtl.css +3 -3
- package/build-style/post-author/style.css +3 -3
- package/build-style/post-comments-form/editor-rtl.css +3 -3
- package/build-style/post-comments-form/editor.css +3 -3
- package/build-style/post-comments-form/style-rtl.css +3 -3
- package/build-style/post-comments-form/style.css +3 -3
- package/build-style/post-date/style-rtl.css +3 -3
- package/build-style/post-date/style.css +3 -3
- package/build-style/post-excerpt/editor-rtl.css +3 -3
- package/build-style/post-excerpt/editor.css +3 -3
- package/build-style/post-excerpt/style-rtl.css +3 -3
- package/build-style/post-excerpt/style.css +3 -3
- package/build-style/post-featured-image/editor-rtl.css +3 -3
- package/build-style/post-featured-image/editor.css +3 -3
- package/build-style/post-featured-image/style-rtl.css +3 -3
- package/build-style/post-featured-image/style.css +3 -3
- package/build-style/post-navigation-link/style-rtl.css +3 -3
- package/build-style/post-navigation-link/style.css +3 -3
- package/build-style/post-template/editor-rtl.css +3 -3
- package/build-style/post-template/editor.css +3 -3
- package/build-style/post-template/style-rtl.css +3 -3
- package/build-style/post-template/style.css +3 -3
- package/build-style/post-terms/style-rtl.css +3 -3
- package/build-style/post-terms/style.css +3 -3
- package/build-style/post-title/style-rtl.css +3 -3
- package/build-style/post-title/style.css +3 -3
- package/build-style/preformatted/style-rtl.css +3 -3
- package/build-style/preformatted/style.css +3 -3
- package/build-style/pullquote/editor-rtl.css +3 -3
- package/build-style/pullquote/editor.css +3 -3
- package/build-style/pullquote/style-rtl.css +3 -3
- package/build-style/pullquote/style.css +3 -3
- package/build-style/pullquote/theme-rtl.css +3 -3
- package/build-style/pullquote/theme.css +3 -3
- package/build-style/query/editor-rtl.css +3 -3
- package/build-style/query/editor.css +3 -3
- package/build-style/query-pagination/editor-rtl.css +3 -3
- package/build-style/query-pagination/editor.css +3 -3
- package/build-style/query-pagination/style-rtl.css +3 -3
- package/build-style/query-pagination/style.css +3 -3
- package/build-style/query-pagination-numbers/editor-rtl.css +3 -3
- package/build-style/query-pagination-numbers/editor.css +3 -3
- package/build-style/query-title/style-rtl.css +3 -3
- package/build-style/query-title/style.css +3 -3
- package/build-style/quote/style-rtl.css +3 -3
- package/build-style/quote/style.css +3 -3
- package/build-style/quote/theme-rtl.css +3 -3
- package/build-style/quote/theme.css +3 -3
- package/build-style/read-more/style-rtl.css +3 -3
- package/build-style/read-more/style.css +3 -3
- package/build-style/reset-rtl.css +3 -3
- package/build-style/reset.css +3 -3
- package/build-style/rss/editor-rtl.css +3 -3
- package/build-style/rss/editor.css +3 -3
- package/build-style/rss/style-rtl.css +3 -3
- package/build-style/rss/style.css +3 -3
- package/build-style/search/editor-rtl.css +3 -3
- package/build-style/search/editor.css +3 -3
- package/build-style/search/style-rtl.css +3 -3
- package/build-style/search/style.css +3 -3
- package/build-style/search/theme-rtl.css +3 -3
- package/build-style/search/theme.css +3 -3
- package/build-style/separator/editor-rtl.css +3 -3
- package/build-style/separator/editor.css +3 -3
- package/build-style/separator/style-rtl.css +3 -3
- package/build-style/separator/style.css +3 -3
- package/build-style/separator/theme-rtl.css +3 -3
- package/build-style/separator/theme.css +3 -3
- package/build-style/shortcode/editor-rtl.css +3 -3
- package/build-style/shortcode/editor.css +3 -3
- package/build-style/site-logo/editor-rtl.css +3 -3
- package/build-style/site-logo/editor.css +3 -3
- package/build-style/site-logo/style-rtl.css +3 -3
- package/build-style/site-logo/style.css +3 -3
- package/build-style/site-tagline/editor-rtl.css +3 -3
- package/build-style/site-tagline/editor.css +3 -3
- package/build-style/site-title/editor-rtl.css +3 -3
- package/build-style/site-title/editor.css +3 -3
- package/build-style/site-title/style-rtl.css +3 -3
- package/build-style/site-title/style.css +3 -3
- package/build-style/social-link/editor-rtl.css +3 -3
- package/build-style/social-link/editor.css +3 -3
- package/build-style/social-links/editor-rtl.css +3 -3
- package/build-style/social-links/editor.css +3 -3
- package/build-style/social-links/style-rtl.css +3 -3
- package/build-style/social-links/style.css +3 -3
- package/build-style/spacer/editor-rtl.css +3 -3
- package/build-style/spacer/editor.css +3 -3
- package/build-style/spacer/style-rtl.css +3 -3
- package/build-style/spacer/style.css +3 -3
- package/build-style/style-rtl.css +13 -5
- package/build-style/style.css +13 -5
- package/build-style/table/editor-rtl.css +3 -3
- package/build-style/table/editor.css +3 -3
- package/build-style/table/style-rtl.css +9 -3
- package/build-style/table/style.css +9 -3
- package/build-style/table/theme-rtl.css +3 -9
- package/build-style/table/theme.css +3 -9
- package/build-style/tag-cloud/style-rtl.css +3 -3
- package/build-style/tag-cloud/style.css +3 -3
- package/build-style/template-part/editor-rtl.css +3 -3
- package/build-style/template-part/editor.css +3 -3
- package/build-style/template-part/theme-rtl.css +3 -3
- package/build-style/template-part/theme.css +3 -3
- package/build-style/text-columns/editor-rtl.css +3 -3
- package/build-style/text-columns/editor.css +3 -3
- package/build-style/text-columns/style-rtl.css +3 -3
- package/build-style/text-columns/style.css +3 -3
- package/build-style/theme-rtl.css +3 -9
- package/build-style/theme.css +3 -9
- package/build-style/verse/style-rtl.css +7 -4
- package/build-style/verse/style.css +7 -4
- package/build-style/video/editor-rtl.css +3 -3
- package/build-style/video/editor.css +3 -3
- package/build-style/video/style-rtl.css +3 -3
- package/build-style/video/style.css +3 -3
- package/build-style/video/theme-rtl.css +3 -3
- package/build-style/video/theme.css +3 -3
- package/package.json +29 -29
- package/src/categories/edit.js +1 -1
- package/src/comments/index.php +0 -1
- package/src/cover/edit/inspector-controls.js +4 -4
- package/src/freeform/edit.js +48 -29
- package/src/freeform/modal.js +111 -0
- package/src/gallery/edit.js +17 -2
- package/src/gallery/gallery.js +3 -13
- package/src/image/image.js +1 -0
- package/src/latest-posts/test/__snapshots__/edit.native.js.snap +3 -0
- package/src/latest-posts/test/edit.native.js +49 -0
- package/src/media-text/edit.js +1 -0
- package/src/missing/edit.native.js +13 -6
- package/src/more/test/__snapshots__/edit.native.js.snap +7 -0
- package/src/more/test/edit.native.js +41 -0
- package/src/navigation/edit/index.js +3 -4
- package/src/navigation/edit/menu-inspector-controls.js +70 -29
- package/src/navigation/edit/navigation-menu-selector.js +19 -9
- package/src/navigation/edit/utils.js +82 -0
- package/src/navigation/editor.scss +0 -7
- package/src/navigation/index.php +32 -0
- package/src/navigation/style.scss +0 -1
- package/src/navigation-link/edit.js +5 -58
- package/src/navigation-link/index.php +32 -0
- package/src/navigation-submenu/edit.js +29 -100
- package/src/navigation-submenu/index.php +32 -0
- package/src/page-list/block.json +18 -1
- package/src/page-list/edit.js +30 -22
- package/src/page-list/editor.scss +4 -0
- package/src/page-list/index.js +8 -2
- package/src/page-list/index.php +9 -10
- package/src/page-list-item/edit.js +17 -9
- package/src/post-featured-image/overlay.js +0 -1
- package/src/query/edit/index.js +1 -0
- package/src/query/edit/inspector-controls/index.js +49 -38
- package/src/query/edit/inspector-controls/taxonomy-controls.js +102 -38
- package/src/query/edit/query-content.js +2 -1
- package/src/query/edit/query-placeholder.js +15 -14
- package/src/query/utils.js +59 -1
- package/src/search/edit.js +2 -2
- package/src/separator/test/__snapshots__/edit.native.js.snap +7 -0
- package/src/separator/test/edit.native.js +41 -0
- package/src/social-link/edit.js +3 -3
- package/src/social-links/edit.js +0 -1
- package/src/table/style.scss +8 -0
- package/src/table/theme.scss +0 -8
- package/src/table-of-contents/edit.js +1 -1
- package/src/template-part/edit/advanced-controls.js +12 -0
- package/src/template-part/edit/import-controls.js +180 -0
- package/src/template-part/edit/index.js +1 -0
- package/src/template-part/edit/utils/transformers.js +37 -0
- package/src/verse/style.scss +4 -1
- package/src/verse/test/__snapshots__/edit.native.js.snap +13 -0
- package/src/verse/test/edit.native.js +40 -33
- package/tsconfig.tsbuildinfo +1 -1
- package/build/query/constants.js +0 -16
- package/build/query/constants.js.map +0 -1
- package/build-module/query/constants.js +0 -7
- package/build-module/query/constants.js.map +0 -1
- package/src/query/constants.js +0 -7
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/block-library/src/missing/edit.native.js"],"names":["UBE_INCOMPATIBLE_BLOCKS","I18N_BLOCK_SCHEMA_TITLE","UnsupportedBlockEdit","Component","constructor","props","state","showHelp","toggleSheet","bind","closeSheet","requestFallback","onHelpButtonPressed","setState","componentWillUnmount","timeout","clearTimeout","getTitle","originalName","attributes","blockType","coreBlocks","title","metadata","textdomain","renderHelpIcon","infoIconStyle","getStylesFromColorScheme","styles","infoIcon","infoIconDark","helpIconContainer","help","color","isSelected","selectBlock","canEnableUnsupportedBlockEditor","isUnsupportedBlockEditorSupported","sendButtonPressMessage","sendFallbackMessage","renderSheet","blockTitle","blockName","clientId","isEditableInUnsupportedBlockEditor","infoTextStyle","infoText","infoTextDark","infoTitleStyle","infoTitle","infoTitleDark","infoDescriptionStyle","infoDescription","infoDescriptionDark","infoSheetIconStyle","infoSheetIcon","infoSheetIconDark","titleFormat","missingBlockDetail","missingBlockActionButton","actionButtonStyle","actionButton","actionButtonDark","setTimeout","content","originalContent","actionButtons","missingBlockAlertActionButton","infoContainer","size","render","preferredColorScheme","titleStyle","unsupportedBlockMessage","unsupportedBlockMessageDark","subTitleStyle","unsupportedBlockSubtitle","unsupportedBlockSubtitleDark","subtitle","icon","settings","plugins","iconStyle","unsupportedBlockIcon","unsupportedBlockIconDark","iconClassName","unsupportedBlock","unsupportedBlockDark","src","select","getSettings","blockEditorStore","unsupportedBlockEditor","includes","dispatch","ownProps","withPreferredColorScheme"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport {\n\tView,\n\tText,\n\tTouchableWithoutFeedback,\n\tTouchableHighlight,\n} from 'react-native';\n\n/**\n * WordPress dependencies\n */\nimport {\n\trequestUnsupportedBlockFallback,\n\tsendActionButtonPressedAction,\n\tactionButtons,\n} from '@wordpress/react-native-bridge';\nimport { BottomSheet, Icon, TextControl } from '@wordpress/components';\nimport { compose, withPreferredColorScheme } from '@wordpress/compose';\nimport { coreBlocks } from '@wordpress/block-library';\nimport { normalizeIconObject } from '@wordpress/blocks';\nimport { Component } from '@wordpress/element';\nimport { __, _x, sprintf } from '@wordpress/i18n';\nimport { help, plugins } from '@wordpress/icons';\nimport { withSelect, withDispatch } from '@wordpress/data';\nimport { applyFilters } from '@wordpress/hooks';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\n\n/**\n * Internal dependencies\n */\nimport styles from './style.scss';\n\n// Blocks that can't be edited through the Unsupported block editor identified by their name.\nconst UBE_INCOMPATIBLE_BLOCKS = [ 'core/block' ];\nconst I18N_BLOCK_SCHEMA_TITLE = 'block title';\n\nexport class UnsupportedBlockEdit extends Component {\n\tconstructor( props ) {\n\t\tsuper( props );\n\t\tthis.state = { showHelp: false };\n\t\tthis.toggleSheet = this.toggleSheet.bind( this );\n\t\tthis.closeSheet = this.closeSheet.bind( this );\n\t\tthis.requestFallback = this.requestFallback.bind( this );\n\t\tthis.onHelpButtonPressed = this.onHelpButtonPressed.bind( this );\n\t}\n\n\ttoggleSheet() {\n\t\tthis.setState( {\n\t\t\tshowHelp: ! this.state.showHelp,\n\t\t} );\n\t}\n\n\tcloseSheet() {\n\t\tthis.setState( {\n\t\t\tshowHelp: false,\n\t\t} );\n\t}\n\n\tcomponentWillUnmount() {\n\t\tif ( this.timeout ) {\n\t\t\tclearTimeout( this.timeout );\n\t\t}\n\t}\n\n\tgetTitle() {\n\t\tconst { originalName } = this.props.attributes;\n\t\tconst blockType = coreBlocks[ originalName ];\n\t\tconst title = blockType?.metadata.title;\n\t\tconst textdomain = blockType?.metadata.textdomain;\n\n\t\treturn title && textdomain\n\t\t\t? // eslint-disable-next-line @wordpress/i18n-no-variables, @wordpress/i18n-text-domain\n\t\t\t _x( title, I18N_BLOCK_SCHEMA_TITLE, textdomain )\n\t\t\t: originalName;\n\t}\n\n\trenderHelpIcon() {\n\t\tconst infoIconStyle = this.props.getStylesFromColorScheme(\n\t\t\tstyles.infoIcon,\n\t\t\tstyles.infoIconDark\n\t\t);\n\n\t\treturn (\n\t\t\t<TouchableHighlight\n\t\t\t\tonPress={ this.onHelpButtonPressed }\n\t\t\t\tstyle={ styles.helpIconContainer }\n\t\t\t\taccessibilityLabel={ __( 'Help button' ) }\n\t\t\t\taccessibilityRole={ 'button' }\n\t\t\t\taccessibilityHint={ __( 'Tap here to show help' ) }\n\t\t\t>\n\t\t\t\t<Icon\n\t\t\t\t\tclassName=\"unsupported-icon-help\"\n\t\t\t\t\tlabel={ __( 'Help icon' ) }\n\t\t\t\t\ticon={ help }\n\t\t\t\t\tcolor={ infoIconStyle.color }\n\t\t\t\t/>\n\t\t\t</TouchableHighlight>\n\t\t);\n\t}\n\n\tonHelpButtonPressed() {\n\t\tif ( ! this.props.isSelected ) {\n\t\t\tthis.props.selectBlock();\n\t\t}\n\t\tthis.toggleSheet();\n\t}\n\n\trequestFallback() {\n\t\tif (\n\t\t\tthis.props.canEnableUnsupportedBlockEditor &&\n\t\t\tthis.props.isUnsupportedBlockEditorSupported === false\n\t\t) {\n\t\t\tthis.toggleSheet();\n\t\t\tthis.setState( { sendButtonPressMessage: true } );\n\t\t} else {\n\t\t\tthis.toggleSheet();\n\t\t\tthis.setState( { sendFallbackMessage: true } );\n\t\t}\n\t}\n\n\trenderSheet( blockTitle, blockName ) {\n\t\tconst {\n\t\t\tgetStylesFromColorScheme,\n\t\t\tattributes,\n\t\t\tclientId,\n\t\t\tisUnsupportedBlockEditorSupported,\n\t\t\tcanEnableUnsupportedBlockEditor,\n\t\t\tisEditableInUnsupportedBlockEditor,\n\t\t} = this.props;\n\t\tconst infoTextStyle = getStylesFromColorScheme(\n\t\t\tstyles.infoText,\n\t\t\tstyles.infoTextDark\n\t\t);\n\t\tconst infoTitleStyle = getStylesFromColorScheme(\n\t\t\tstyles.infoTitle,\n\t\t\tstyles.infoTitleDark\n\t\t);\n\t\tconst infoDescriptionStyle = getStylesFromColorScheme(\n\t\t\tstyles.infoDescription,\n\t\t\tstyles.infoDescriptionDark\n\t\t);\n\t\tconst infoSheetIconStyle = getStylesFromColorScheme(\n\t\t\tstyles.infoSheetIcon,\n\t\t\tstyles.infoSheetIconDark\n\t\t);\n\n\t\t/* translators: Missing block alert title. %s: The localized block name */\n\t\tconst titleFormat = __( \"'%s' is not fully-supported\" );\n\t\tconst infoTitle = sprintf( titleFormat, blockTitle );\n\t\tconst missingBlockDetail = applyFilters(\n\t\t\t'native.missing_block_detail',\n\t\t\t__( 'We are working hard to add more blocks with each release.' )\n\t\t);\n\t\tconst missingBlockActionButton = applyFilters(\n\t\t\t'native.missing_block_action_button',\n\t\t\t__( 'Edit using web editor' )\n\t\t);\n\n\t\tconst actionButtonStyle = getStylesFromColorScheme(\n\t\t\tstyles.actionButton,\n\t\t\tstyles.actionButtonDark\n\t\t);\n\n\t\treturn (\n\t\t\t<BottomSheet\n\t\t\t\tisVisible={ this.state.showHelp }\n\t\t\t\thideHeader\n\t\t\t\tonClose={ this.closeSheet }\n\t\t\t\tonModalHide={ () => {\n\t\t\t\t\tif ( this.state.sendFallbackMessage ) {\n\t\t\t\t\t\t// On iOS, onModalHide is called when the controller is still part of the hierarchy.\n\t\t\t\t\t\t// A small delay will ensure that the controller has already been removed.\n\t\t\t\t\t\tthis.timeout = setTimeout( () => {\n\t\t\t\t\t\t\t// For the Classic block, the content is kept in the `content` attribute.\n\t\t\t\t\t\t\tconst content =\n\t\t\t\t\t\t\t\tblockName === 'core/freeform'\n\t\t\t\t\t\t\t\t\t? attributes.content\n\t\t\t\t\t\t\t\t\t: attributes.originalContent;\n\t\t\t\t\t\t\trequestUnsupportedBlockFallback(\n\t\t\t\t\t\t\t\tcontent,\n\t\t\t\t\t\t\t\tclientId,\n\t\t\t\t\t\t\t\tblockName,\n\t\t\t\t\t\t\t\tblockTitle\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t}, 100 );\n\t\t\t\t\t\tthis.setState( { sendFallbackMessage: false } );\n\t\t\t\t\t} else if ( this.state.sendButtonPressMessage ) {\n\t\t\t\t\t\tthis.timeout = setTimeout( () => {\n\t\t\t\t\t\t\tsendActionButtonPressedAction(\n\t\t\t\t\t\t\t\tactionButtons.missingBlockAlertActionButton\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t}, 100 );\n\t\t\t\t\t\tthis.setState( { sendButtonPressMessage: false } );\n\t\t\t\t\t}\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t<View style={ styles.infoContainer }>\n\t\t\t\t\t<Icon\n\t\t\t\t\t\ticon={ help }\n\t\t\t\t\t\tcolor={ infoSheetIconStyle.color }\n\t\t\t\t\t\tsize={ styles.infoSheetIcon.size }\n\t\t\t\t\t/>\n\t\t\t\t\t<Text style={ [ infoTextStyle, infoTitleStyle ] }>\n\t\t\t\t\t\t{ infoTitle }\n\t\t\t\t\t</Text>\n\t\t\t\t\t{ isEditableInUnsupportedBlockEditor && (\n\t\t\t\t\t\t<Text style={ [ infoTextStyle, infoDescriptionStyle ] }>\n\t\t\t\t\t\t\t{ missingBlockDetail }\n\t\t\t\t\t\t</Text>\n\t\t\t\t\t) }\n\t\t\t\t</View>\n\t\t\t\t{ ( isUnsupportedBlockEditorSupported ||\n\t\t\t\t\tcanEnableUnsupportedBlockEditor ) &&\n\t\t\t\t\tisEditableInUnsupportedBlockEditor && (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<TextControl\n\t\t\t\t\t\t\t\tlabel={ missingBlockActionButton }\n\t\t\t\t\t\t\t\tseparatorType=\"topFullWidth\"\n\t\t\t\t\t\t\t\tonPress={ this.requestFallback }\n\t\t\t\t\t\t\t\tlabelStyle={ actionButtonStyle }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<TextControl\n\t\t\t\t\t\t\t\tlabel={ __( 'Dismiss' ) }\n\t\t\t\t\t\t\t\tseparatorType=\"topFullWidth\"\n\t\t\t\t\t\t\t\tonPress={ this.toggleSheet }\n\t\t\t\t\t\t\t\tlabelStyle={ actionButtonStyle }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</>\n\t\t\t\t\t) }\n\t\t\t</BottomSheet>\n\t\t);\n\t}\n\n\trender() {\n\t\tconst { originalName } = this.props.attributes;\n\t\tconst { getStylesFromColorScheme, preferredColorScheme } = this.props;\n\t\tconst blockType = coreBlocks[ originalName ];\n\n\t\tconst title = this.getTitle();\n\t\tconst titleStyle = getStylesFromColorScheme(\n\t\t\tstyles.unsupportedBlockMessage,\n\t\t\tstyles.unsupportedBlockMessageDark\n\t\t);\n\n\t\tconst subTitleStyle = getStylesFromColorScheme(\n\t\t\tstyles.unsupportedBlockSubtitle,\n\t\t\tstyles.unsupportedBlockSubtitleDark\n\t\t);\n\t\tconst subtitle = (\n\t\t\t<Text style={ subTitleStyle }>{ __( 'Unsupported' ) }</Text>\n\t\t);\n\n\t\tconst icon = blockType\n\t\t\t? normalizeIconObject( blockType.settings.icon )\n\t\t\t: plugins;\n\t\tconst iconStyle = getStylesFromColorScheme(\n\t\t\tstyles.unsupportedBlockIcon,\n\t\t\tstyles.unsupportedBlockIconDark\n\t\t);\n\t\tconst iconClassName = 'unsupported-icon' + '-' + preferredColorScheme;\n\t\treturn (\n\t\t\t<TouchableWithoutFeedback\n\t\t\t\tdisabled={ ! this.props.isSelected }\n\t\t\t\taccessibilityLabel={ __( 'Help button' ) }\n\t\t\t\taccessibilityRole={ 'button' }\n\t\t\t\taccessibilityHint={ __( 'Tap here to show help' ) }\n\t\t\t\tonPress={ this.toggleSheet }\n\t\t\t>\n\t\t\t\t<View\n\t\t\t\t\tstyle={ getStylesFromColorScheme(\n\t\t\t\t\t\tstyles.unsupportedBlock,\n\t\t\t\t\t\tstyles.unsupportedBlockDark\n\t\t\t\t\t) }\n\t\t\t\t>\n\t\t\t\t\t{ this.renderHelpIcon() }\n\t\t\t\t\t<Icon\n\t\t\t\t\t\tclassName={ iconClassName }\n\t\t\t\t\t\ticon={ icon && icon.src ? icon.src : icon }\n\t\t\t\t\t\tcolor={ iconStyle.color }\n\t\t\t\t\t/>\n\t\t\t\t\t<Text style={ titleStyle }>{ title }</Text>\n\t\t\t\t\t{ subtitle }\n\t\t\t\t\t{ this.renderSheet( title, originalName ) }\n\t\t\t\t</View>\n\t\t\t</TouchableWithoutFeedback>\n\t\t);\n\t}\n}\n\nexport default compose( [\n\twithSelect( ( select, { attributes } ) => {\n\t\tconst { getSettings } = select( blockEditorStore );\n\t\treturn {\n\t\t\tisUnsupportedBlockEditorSupported:\n\t\t\t\tgetSettings( 'capabilities' ).unsupportedBlockEditor === true,\n\t\t\tcanEnableUnsupportedBlockEditor:\n\t\t\t\tgetSettings( 'capabilities' )\n\t\t\t\t\t.canEnableUnsupportedBlockEditor === true,\n\t\t\tisEditableInUnsupportedBlockEditor:\n\t\t\t\t! UBE_INCOMPATIBLE_BLOCKS.includes( attributes.originalName ),\n\t\t};\n\t} ),\n\twithDispatch( ( dispatch, ownProps ) => {\n\t\tconst { selectBlock } = dispatch( blockEditorStore );\n\t\treturn {\n\t\t\tselectBlock() {\n\t\t\t\tselectBlock( ownProps.clientId );\n\t\t\t},\n\t\t};\n\t} ),\n\twithPreferredColorScheme,\n] )( UnsupportedBlockEdit );\n"]}
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/missing/edit.native.js"],"names":["UBE_INCOMPATIBLE_BLOCKS","I18N_BLOCK_SCHEMA_TITLE","UnsupportedBlockEdit","Component","constructor","props","state","showHelp","toggleSheet","bind","closeSheet","requestFallback","onHelpButtonPressed","setState","componentWillUnmount","timeout","clearTimeout","getTitle","originalName","attributes","blockType","coreBlocks","title","metadata","textdomain","renderHelpIcon","infoIconStyle","getStylesFromColorScheme","styles","infoIcon","infoIconDark","helpIconContainer","help","color","isSelected","selectBlock","canEnableUnsupportedBlockEditor","isUnsupportedBlockEditorSupported","sendButtonPressMessage","sendFallbackMessage","renderSheet","blockTitle","blockName","clientId","isEditableInUnsupportedBlockEditor","infoTextStyle","infoText","infoTextDark","infoTitleStyle","infoTitle","infoTitleDark","infoDescriptionStyle","infoDescription","infoDescriptionDark","infoSheetIconStyle","infoSheetIcon","infoSheetIconDark","titleFormat","missingBlockDetail","missingBlockActionButton","actionButtonStyle","actionButton","actionButtonDark","setTimeout","content","originalContent","actionButtons","missingBlockAlertActionButton","infoContainer","size","render","preferredColorScheme","titleStyle","unsupportedBlockMessage","unsupportedBlockMessageDark","subTitleStyle","unsupportedBlockSubtitle","unsupportedBlockSubtitleDark","subtitle","icon","settings","plugins","iconStyle","unsupportedBlockIcon","unsupportedBlockIconDark","iconClassName","unsupportedBlock","unsupportedBlockDark","src","select","getSettings","blockEditorStore","unsupportedBlockEditor","includes","dispatch","ownProps","withPreferredColorScheme"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport {\n\tView,\n\tText,\n\tTouchableWithoutFeedback,\n\tTouchableHighlight,\n} from 'react-native';\n\n/**\n * WordPress dependencies\n */\nimport {\n\trequestUnsupportedBlockFallback,\n\tsendActionButtonPressedAction,\n\tactionButtons,\n} from '@wordpress/react-native-bridge';\nimport { BottomSheet, Icon, TextControl } from '@wordpress/components';\nimport { compose, withPreferredColorScheme } from '@wordpress/compose';\nimport { coreBlocks } from '@wordpress/block-library';\nimport { normalizeIconObject } from '@wordpress/blocks';\nimport { Component } from '@wordpress/element';\nimport { __, _x, sprintf } from '@wordpress/i18n';\nimport { help, plugins } from '@wordpress/icons';\nimport { withSelect, withDispatch } from '@wordpress/data';\nimport { applyFilters } from '@wordpress/hooks';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\n\n/**\n * Internal dependencies\n */\nimport styles from './style.scss';\n\n// Blocks that can't be edited through the Unsupported block editor identified by their name.\nconst UBE_INCOMPATIBLE_BLOCKS = [ 'core/block' ];\nconst I18N_BLOCK_SCHEMA_TITLE = 'block title';\n\nexport class UnsupportedBlockEdit extends Component {\n\tconstructor( props ) {\n\t\tsuper( props );\n\t\tthis.state = { showHelp: false };\n\t\tthis.toggleSheet = this.toggleSheet.bind( this );\n\t\tthis.closeSheet = this.closeSheet.bind( this );\n\t\tthis.requestFallback = this.requestFallback.bind( this );\n\t\tthis.onHelpButtonPressed = this.onHelpButtonPressed.bind( this );\n\t}\n\n\ttoggleSheet() {\n\t\tthis.setState( {\n\t\t\tshowHelp: ! this.state.showHelp,\n\t\t} );\n\t}\n\n\tcloseSheet() {\n\t\tthis.setState( {\n\t\t\tshowHelp: false,\n\t\t} );\n\t}\n\n\tcomponentWillUnmount() {\n\t\tif ( this.timeout ) {\n\t\t\tclearTimeout( this.timeout );\n\t\t}\n\t}\n\n\tgetTitle() {\n\t\tconst { originalName } = this.props.attributes;\n\t\tconst blockType = coreBlocks[ originalName ];\n\t\tconst title = blockType?.metadata.title;\n\t\tconst textdomain = blockType?.metadata.textdomain;\n\n\t\treturn title && textdomain\n\t\t\t? // eslint-disable-next-line @wordpress/i18n-no-variables, @wordpress/i18n-text-domain\n\t\t\t _x( title, I18N_BLOCK_SCHEMA_TITLE, textdomain )\n\t\t\t: originalName;\n\t}\n\n\trenderHelpIcon() {\n\t\tconst infoIconStyle = this.props.getStylesFromColorScheme(\n\t\t\tstyles.infoIcon,\n\t\t\tstyles.infoIconDark\n\t\t);\n\n\t\treturn (\n\t\t\t<TouchableHighlight\n\t\t\t\tonPress={ this.onHelpButtonPressed }\n\t\t\t\tstyle={ styles.helpIconContainer }\n\t\t\t\taccessibilityLabel={ __( 'Help button' ) }\n\t\t\t\taccessibilityRole={ 'button' }\n\t\t\t\taccessibilityHint={ __( 'Tap here to show help' ) }\n\t\t\t>\n\t\t\t\t<Icon\n\t\t\t\t\tclassName=\"unsupported-icon-help\"\n\t\t\t\t\tlabel={ __( 'Help icon' ) }\n\t\t\t\t\ticon={ help }\n\t\t\t\t\tcolor={ infoIconStyle.color }\n\t\t\t\t/>\n\t\t\t</TouchableHighlight>\n\t\t);\n\t}\n\n\tonHelpButtonPressed() {\n\t\tif ( ! this.props.isSelected ) {\n\t\t\tthis.props.selectBlock();\n\t\t}\n\t\tthis.toggleSheet();\n\t}\n\n\trequestFallback() {\n\t\tif (\n\t\t\tthis.props.canEnableUnsupportedBlockEditor &&\n\t\t\tthis.props.isUnsupportedBlockEditorSupported === false\n\t\t) {\n\t\t\tthis.toggleSheet();\n\t\t\tthis.setState( { sendButtonPressMessage: true } );\n\t\t} else {\n\t\t\tthis.toggleSheet();\n\t\t\tthis.setState( { sendFallbackMessage: true } );\n\t\t}\n\t}\n\n\trenderSheet( blockTitle, blockName ) {\n\t\tconst {\n\t\t\tgetStylesFromColorScheme,\n\t\t\tattributes,\n\t\t\tclientId,\n\t\t\tisUnsupportedBlockEditorSupported,\n\t\t\tcanEnableUnsupportedBlockEditor,\n\t\t\tisEditableInUnsupportedBlockEditor,\n\t\t} = this.props;\n\t\tconst infoTextStyle = getStylesFromColorScheme(\n\t\t\tstyles.infoText,\n\t\t\tstyles.infoTextDark\n\t\t);\n\t\tconst infoTitleStyle = getStylesFromColorScheme(\n\t\t\tstyles.infoTitle,\n\t\t\tstyles.infoTitleDark\n\t\t);\n\t\tconst infoDescriptionStyle = getStylesFromColorScheme(\n\t\t\tstyles.infoDescription,\n\t\t\tstyles.infoDescriptionDark\n\t\t);\n\t\tconst infoSheetIconStyle = getStylesFromColorScheme(\n\t\t\tstyles.infoSheetIcon,\n\t\t\tstyles.infoSheetIconDark\n\t\t);\n\n\t\t/* translators: Missing block alert title. %s: The localized block name */\n\t\tconst titleFormat = __( \"'%s' is not fully-supported\" );\n\t\tconst infoTitle = sprintf( titleFormat, blockTitle );\n\t\tconst missingBlockDetail = applyFilters(\n\t\t\t'native.missing_block_detail',\n\t\t\t__( 'We are working hard to add more blocks with each release.' ),\n\t\t\tblockName\n\t\t);\n\t\tconst missingBlockActionButton = applyFilters(\n\t\t\t'native.missing_block_action_button',\n\t\t\t__( 'Edit using web editor' )\n\t\t);\n\n\t\tconst actionButtonStyle = getStylesFromColorScheme(\n\t\t\tstyles.actionButton,\n\t\t\tstyles.actionButtonDark\n\t\t);\n\n\t\treturn (\n\t\t\t<BottomSheet\n\t\t\t\tisVisible={ this.state.showHelp }\n\t\t\t\thideHeader\n\t\t\t\tonClose={ this.closeSheet }\n\t\t\t\tonModalHide={ () => {\n\t\t\t\t\tif ( this.state.sendFallbackMessage ) {\n\t\t\t\t\t\t// On iOS, onModalHide is called when the controller is still part of the hierarchy.\n\t\t\t\t\t\t// A small delay will ensure that the controller has already been removed.\n\t\t\t\t\t\tthis.timeout = setTimeout( () => {\n\t\t\t\t\t\t\t// For the Classic block, the content is kept in the `content` attribute.\n\t\t\t\t\t\t\tconst content =\n\t\t\t\t\t\t\t\tblockName === 'core/freeform'\n\t\t\t\t\t\t\t\t\t? attributes.content\n\t\t\t\t\t\t\t\t\t: attributes.originalContent;\n\t\t\t\t\t\t\trequestUnsupportedBlockFallback(\n\t\t\t\t\t\t\t\tcontent,\n\t\t\t\t\t\t\t\tclientId,\n\t\t\t\t\t\t\t\tblockName,\n\t\t\t\t\t\t\t\tblockTitle\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t}, 100 );\n\t\t\t\t\t\tthis.setState( { sendFallbackMessage: false } );\n\t\t\t\t\t} else if ( this.state.sendButtonPressMessage ) {\n\t\t\t\t\t\tthis.timeout = setTimeout( () => {\n\t\t\t\t\t\t\tsendActionButtonPressedAction(\n\t\t\t\t\t\t\t\tactionButtons.missingBlockAlertActionButton\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t}, 100 );\n\t\t\t\t\t\tthis.setState( { sendButtonPressMessage: false } );\n\t\t\t\t\t}\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t<View style={ styles.infoContainer }>\n\t\t\t\t\t<Icon\n\t\t\t\t\t\ticon={ help }\n\t\t\t\t\t\tcolor={ infoSheetIconStyle.color }\n\t\t\t\t\t\tsize={ styles.infoSheetIcon.size }\n\t\t\t\t\t/>\n\t\t\t\t\t<Text style={ [ infoTextStyle, infoTitleStyle ] }>\n\t\t\t\t\t\t{ infoTitle }\n\t\t\t\t\t</Text>\n\t\t\t\t\t{ isEditableInUnsupportedBlockEditor &&\n\t\t\t\t\t\tmissingBlockDetail && (\n\t\t\t\t\t\t\t<Text\n\t\t\t\t\t\t\t\tstyle={ [\n\t\t\t\t\t\t\t\t\tinfoTextStyle,\n\t\t\t\t\t\t\t\t\tinfoDescriptionStyle,\n\t\t\t\t\t\t\t\t] }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ missingBlockDetail }\n\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t) }\n\t\t\t\t</View>\n\t\t\t\t{ ( isUnsupportedBlockEditorSupported ||\n\t\t\t\t\tcanEnableUnsupportedBlockEditor ) &&\n\t\t\t\t\tisEditableInUnsupportedBlockEditor && (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<TextControl\n\t\t\t\t\t\t\t\tlabel={ missingBlockActionButton }\n\t\t\t\t\t\t\t\tseparatorType=\"topFullWidth\"\n\t\t\t\t\t\t\t\tonPress={ this.requestFallback }\n\t\t\t\t\t\t\t\tlabelStyle={ actionButtonStyle }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<TextControl\n\t\t\t\t\t\t\t\tlabel={ __( 'Dismiss' ) }\n\t\t\t\t\t\t\t\tseparatorType=\"topFullWidth\"\n\t\t\t\t\t\t\t\tonPress={ this.toggleSheet }\n\t\t\t\t\t\t\t\tlabelStyle={ actionButtonStyle }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</>\n\t\t\t\t\t) }\n\t\t\t</BottomSheet>\n\t\t);\n\t}\n\n\trender() {\n\t\tconst { originalName } = this.props.attributes;\n\t\tconst { getStylesFromColorScheme, preferredColorScheme } = this.props;\n\t\tconst blockType = coreBlocks[ originalName ];\n\n\t\tconst title = this.getTitle();\n\t\tconst titleStyle = getStylesFromColorScheme(\n\t\t\tstyles.unsupportedBlockMessage,\n\t\t\tstyles.unsupportedBlockMessageDark\n\t\t);\n\n\t\tconst subTitleStyle = getStylesFromColorScheme(\n\t\t\tstyles.unsupportedBlockSubtitle,\n\t\t\tstyles.unsupportedBlockSubtitleDark\n\t\t);\n\t\tconst subtitle = (\n\t\t\t<Text style={ subTitleStyle }>{ __( 'Unsupported' ) }</Text>\n\t\t);\n\n\t\tconst icon = blockType\n\t\t\t? normalizeIconObject( blockType.settings.icon )\n\t\t\t: plugins;\n\t\tconst iconStyle = getStylesFromColorScheme(\n\t\t\tstyles.unsupportedBlockIcon,\n\t\t\tstyles.unsupportedBlockIconDark\n\t\t);\n\t\tconst iconClassName = 'unsupported-icon' + '-' + preferredColorScheme;\n\t\treturn (\n\t\t\t<TouchableWithoutFeedback\n\t\t\t\tdisabled={ ! this.props.isSelected }\n\t\t\t\taccessibilityLabel={ __( 'Help button' ) }\n\t\t\t\taccessibilityRole={ 'button' }\n\t\t\t\taccessibilityHint={ __( 'Tap here to show help' ) }\n\t\t\t\tonPress={ this.toggleSheet }\n\t\t\t>\n\t\t\t\t<View\n\t\t\t\t\tstyle={ getStylesFromColorScheme(\n\t\t\t\t\t\tstyles.unsupportedBlock,\n\t\t\t\t\t\tstyles.unsupportedBlockDark\n\t\t\t\t\t) }\n\t\t\t\t>\n\t\t\t\t\t{ this.renderHelpIcon() }\n\t\t\t\t\t<Icon\n\t\t\t\t\t\tclassName={ iconClassName }\n\t\t\t\t\t\ticon={ icon && icon.src ? icon.src : icon }\n\t\t\t\t\t\tcolor={ iconStyle.color }\n\t\t\t\t\t/>\n\t\t\t\t\t<Text style={ titleStyle }>{ title }</Text>\n\t\t\t\t\t{ subtitle }\n\t\t\t\t\t{ this.renderSheet( title, originalName ) }\n\t\t\t\t</View>\n\t\t\t</TouchableWithoutFeedback>\n\t\t);\n\t}\n}\n\nexport default compose( [\n\twithSelect( ( select, { attributes } ) => {\n\t\tconst { getSettings } = select( blockEditorStore );\n\t\treturn {\n\t\t\tisUnsupportedBlockEditorSupported:\n\t\t\t\tgetSettings( 'capabilities' ).unsupportedBlockEditor === true,\n\t\t\tcanEnableUnsupportedBlockEditor:\n\t\t\t\tgetSettings( 'capabilities' )\n\t\t\t\t\t.canEnableUnsupportedBlockEditor === true,\n\t\t\tisEditableInUnsupportedBlockEditor:\n\t\t\t\t! UBE_INCOMPATIBLE_BLOCKS.includes( attributes.originalName ),\n\t\t};\n\t} ),\n\twithDispatch( ( dispatch, ownProps ) => {\n\t\tconst { selectBlock } = dispatch( blockEditorStore );\n\t\treturn {\n\t\t\tselectBlock() {\n\t\t\t\tselectBlock( ownProps.clientId );\n\t\t\t},\n\t\t};\n\t} ),\n\twithPreferredColorScheme,\n] )( UnsupportedBlockEdit );\n"]}
|
|
@@ -490,7 +490,6 @@ function Navigation(_ref) {
|
|
|
490
490
|
})))), (0, _element.createElement)(_blockEditor.InspectorControls, {
|
|
491
491
|
__experimentalGroup: "color"
|
|
492
492
|
}, hasColorSettings && (0, _element.createElement)(_element.Fragment, null, (0, _element.createElement)(_blockEditor.__experimentalColorGradientSettingsDropdown, (0, _extends2.default)({
|
|
493
|
-
__experimentalHasMultipleOrigins: true,
|
|
494
493
|
__experimentalIsRenderedInSidebar: true,
|
|
495
494
|
settings: [{
|
|
496
495
|
colorValue: textColor.color,
|
|
@@ -535,11 +534,11 @@ function Navigation(_ref) {
|
|
|
535
534
|
|
|
536
535
|
if (hasUnsavedBlocks && !isCreatingNavigationMenu) {
|
|
537
536
|
return (0, _element.createElement)(TagName, blockProps, (0, _element.createElement)(_menuInspectorControls.default, {
|
|
537
|
+
clientId: clientId,
|
|
538
538
|
createNavigationMenuIsSuccess: createNavigationMenuIsSuccess,
|
|
539
539
|
createNavigationMenuIsError: createNavigationMenuIsError,
|
|
540
540
|
currentMenuId: ref,
|
|
541
541
|
isNavigationMenuMissing: isNavigationMenuMissing,
|
|
542
|
-
innerBlocks: innerBlocks,
|
|
543
542
|
isManageMenusButtonDisabled: isManageMenusButtonDisabled,
|
|
544
543
|
onCreateNew: createUntitledEmptyNavigationMenu,
|
|
545
544
|
onSelectClassicMenu: onSelectClassicMenu,
|
|
@@ -567,10 +566,10 @@ function Navigation(_ref) {
|
|
|
567
566
|
|
|
568
567
|
if (ref && isNavigationMenuMissing) {
|
|
569
568
|
return (0, _element.createElement)(TagName, blockProps, (0, _element.createElement)(_menuInspectorControls.default, {
|
|
569
|
+
clientId: clientId,
|
|
570
570
|
createNavigationMenuIsSuccess: createNavigationMenuIsSuccess,
|
|
571
571
|
createNavigationMenuIsError: createNavigationMenuIsError,
|
|
572
572
|
isNavigationMenuMissing: isNavigationMenuMissing,
|
|
573
|
-
innerBlocks: innerBlocks,
|
|
574
573
|
isManageMenusButtonDisabled: isManageMenusButtonDisabled,
|
|
575
574
|
onCreateNew: createUntitledEmptyNavigationMenu,
|
|
576
575
|
onSelectClassicMenu: onSelectClassicMenu,
|
|
@@ -616,11 +615,11 @@ function Navigation(_ref) {
|
|
|
616
615
|
}, (0, _element.createElement)(_blockEditor.__experimentalRecursionProvider, {
|
|
617
616
|
uniqueId: recursionId
|
|
618
617
|
}, (0, _element.createElement)(_menuInspectorControls.default, {
|
|
618
|
+
clientId: clientId,
|
|
619
619
|
createNavigationMenuIsSuccess: createNavigationMenuIsSuccess,
|
|
620
620
|
createNavigationMenuIsError: createNavigationMenuIsError,
|
|
621
621
|
currentMenuId: ref,
|
|
622
622
|
isNavigationMenuMissing: isNavigationMenuMissing,
|
|
623
|
-
innerBlocks: innerBlocks,
|
|
624
623
|
isManageMenusButtonDisabled: isManageMenusButtonDisabled,
|
|
625
624
|
onCreateNew: createUntitledEmptyNavigationMenu,
|
|
626
625
|
onSelectClassicMenu: onSelectClassicMenu,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/block-library/src/navigation/edit/index.js"],"names":["Navigation","attributes","setAttributes","clientId","isSelected","className","backgroundColor","setBackgroundColor","textColor","setTextColor","overlayBackgroundColor","setOverlayBackgroundColor","overlayTextColor","setOverlayTextColor","hasSubmenuIndicatorSetting","hasColorSettings","customPlaceholder","CustomPlaceholder","isOffCanvasNavigationEditorEnabled","window","__experimentalEnableOffCanvasNavigationEditor","openSubmenusOnClick","overlayMenu","showSubmenuIcon","templateLock","layout","justifyContent","orientation","flexWrap","hasIcon","icon","ref","setRef","postId","recursionId","hasAlreadyRendered","editEntityRecord","coreStore","menus","classicMenus","showNavigationMenuStatusNotice","hideNavigationMenuStatusNotice","name","showClassicMenuConversionNotice","hideClassicMenuConversionNotice","showMenuAutoPublishDraftNotice","hideMenuAutoPublishDraftNotice","showNavigationMenuPermissionsNotice","hideNavigationMenuPermissionsNotice","create","createNavigationMenu","status","createNavigationMenuStatus","error","createNavigationMenuError","value","createNavigationMenuPost","isPending","isCreatingNavigationMenu","isSuccess","createNavigationMenuIsSuccess","isError","createNavigationMenuIsError","createUntitledEmptyNavigationMenu","handleUpdateMenu","id","focusNavigationBlock","hasUncontrolledInnerBlocks","uncontrolledInnerBlocks","isInnerBlockSelected","innerBlocks","hasSubmenus","find","block","replaceInnerBlocks","selectBlock","__unstableMarkNextChangeAsNotPersistent","blockEditorStore","isResponsiveMenuOpen","setResponsiveMenuVisibility","overlayMenuPreview","setOverlayMenuPreview","hasResolvedNavigationMenus","isNavigationMenuResolved","isNavigationMenuMissing","navigationMenus","navigationMenu","canUserUpdateNavigationMenu","hasResolvedCanUserUpdateNavigationMenu","canUserDeleteNavigationMenu","hasResolvedCanUserDeleteNavigationMenu","canUserCreateNavigationMenu","isResolvingCanUserCreateNavigationMenu","hasResolvedCanUserCreateNavigationMenu","navMenuResolvedButMissing","convert","convertClassicMenu","classicMenuConversionStatus","classicMenuConversionError","isConvertingClassicMenu","CLASSIC_MENU_CONVERSION_PENDING","fallbackNavigationMenus","filter","menu","sort","menuA","menuB","menuADate","Date","date","menuBDate","getTime","length","primaryMenus","classicMenu","locations","includes","slug","a","b","navRef","TagName","isPlaceholder","isEntityAvailable","isLoading","textDecoration","style","typography","hasBlockOverlay","blockProps","color","class","enableContrastChecking","Platform","OS","detectedBackgroundColor","setDetectedBackgroundColor","detectedColor","setDetectedColor","detectedOverlayBackgroundColor","setDetectedOverlayBackgroundColor","detectedOverlayColor","setDetectedOverlayColor","menuId","options","onSelectClassicMenu","navMenu","onSelectNavigationMenu","CLASSIC_MENU_CONVERSION_SUCCESS","CLASSIC_MENU_CONVERSION_ERROR","current","subMenuElement","querySelector","hasManagePermissions","isResponsive","overlayMenuPreviewClasses","open","isDraftNavigationMenu","throwOnError","catch","colorGradientSettings","stylingInspectorControls","close","colorValue","label","onColorChange","resetAllFilter","hasUnsavedBlocks","isManageMenusButtonDisabled","PlaceholderComponent","Placeholder","deletedMenuTitle"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tuseState,\n\tuseEffect,\n\tuseRef,\n\tPlatform,\n\tuseMemo,\n} from '@wordpress/element';\nimport {\n\tInspectorControls,\n\tuseBlockProps,\n\t__experimentalRecursionProvider as RecursionProvider,\n\t__experimentalUseHasRecursion as useHasRecursion,\n\tstore as blockEditorStore,\n\twithColors,\n\tContrastChecker,\n\tgetColorClassName,\n\tWarning,\n\t__experimentalColorGradientSettingsDropdown as ColorGradientSettingsDropdown,\n\t__experimentalUseBlockOverlayActive as useBlockOverlayActive,\n\t__experimentalUseMultipleOriginColorsAndGradients as useMultipleOriginColorsAndGradients,\n} from '@wordpress/block-editor';\nimport { EntityProvider, store as coreStore } from '@wordpress/core-data';\n\nimport { useDispatch } from '@wordpress/data';\nimport {\n\tPanelBody,\n\tToggleControl,\n\t__experimentalToggleGroupControl as ToggleGroupControl,\n\t__experimentalToggleGroupControlOption as ToggleGroupControlOption,\n\tButton,\n\tSpinner,\n} from '@wordpress/components';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { speak } from '@wordpress/a11y';\nimport { createBlock } from '@wordpress/blocks';\nimport { close, Icon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport useNavigationMenu from '../use-navigation-menu';\nimport useNavigationEntities from '../use-navigation-entities';\nimport Placeholder from './placeholder';\nimport ResponsiveWrapper from './responsive-wrapper';\nimport NavigationInnerBlocks from './inner-blocks';\nimport NavigationMenuNameControl from './navigation-menu-name-control';\nimport UnsavedInnerBlocks from './unsaved-inner-blocks';\nimport NavigationMenuDeleteControl from './navigation-menu-delete-control';\nimport useNavigationNotice from './use-navigation-notice';\nimport OverlayMenuIcon from './overlay-menu-icon';\nimport OverlayMenuPreview from './overlay-menu-preview';\nimport useConvertClassicToBlockMenu, {\n\tCLASSIC_MENU_CONVERSION_ERROR,\n\tCLASSIC_MENU_CONVERSION_PENDING,\n\tCLASSIC_MENU_CONVERSION_SUCCESS,\n} from './use-convert-classic-menu-to-block-menu';\nimport useCreateNavigationMenu from './use-create-navigation-menu';\nimport { useInnerBlocks } from './use-inner-blocks';\nimport { detectColors } from './utils';\nimport ManageMenusButton from './manage-menus-button';\nimport MenuInspectorControls from './menu-inspector-controls';\n\nfunction Navigation( {\n\tattributes,\n\tsetAttributes,\n\tclientId,\n\tisSelected,\n\tclassName,\n\tbackgroundColor,\n\tsetBackgroundColor,\n\ttextColor,\n\tsetTextColor,\n\toverlayBackgroundColor,\n\tsetOverlayBackgroundColor,\n\toverlayTextColor,\n\tsetOverlayTextColor,\n\n\t// These props are used by the navigation editor to override specific\n\t// navigation block settings.\n\thasSubmenuIndicatorSetting = true,\n\thasColorSettings = true,\n\tcustomPlaceholder: CustomPlaceholder = null,\n} ) {\n\tconst isOffCanvasNavigationEditorEnabled =\n\t\twindow?.__experimentalEnableOffCanvasNavigationEditor === true;\n\n\tconst {\n\t\topenSubmenusOnClick,\n\t\toverlayMenu,\n\t\tshowSubmenuIcon,\n\t\ttemplateLock,\n\t\tlayout: {\n\t\t\tjustifyContent,\n\t\t\torientation = 'horizontal',\n\t\t\tflexWrap = 'wrap',\n\t\t} = {},\n\t\thasIcon,\n\t\ticon = 'handle',\n\t} = attributes;\n\n\tconst ref = attributes.ref;\n\n\tconst setRef = ( postId ) => {\n\t\tsetAttributes( { ref: postId } );\n\t};\n\n\tconst recursionId = `navigationMenu/${ ref }`;\n\tconst hasAlreadyRendered = useHasRecursion( recursionId );\n\tconst { editEntityRecord } = useDispatch( coreStore );\n\n\t// Preload classic menus, so that they don't suddenly pop-in when viewing\n\t// the Select Menu dropdown.\n\tconst { menus: classicMenus } = useNavigationEntities();\n\n\tconst [ showNavigationMenuStatusNotice, hideNavigationMenuStatusNotice ] =\n\t\tuseNavigationNotice( {\n\t\t\tname: 'block-library/core/navigation/status',\n\t\t} );\n\n\tconst [ showClassicMenuConversionNotice, hideClassicMenuConversionNotice ] =\n\t\tuseNavigationNotice( {\n\t\t\tname: 'block-library/core/navigation/classic-menu-conversion',\n\t\t} );\n\n\tconst [ showMenuAutoPublishDraftNotice, hideMenuAutoPublishDraftNotice ] =\n\t\tuseNavigationNotice( {\n\t\t\tname: 'block-library/core/navigation/auto-publish-draft',\n\t\t} );\n\n\tconst [\n\t\tshowNavigationMenuPermissionsNotice,\n\t\thideNavigationMenuPermissionsNotice,\n\t] = useNavigationNotice( {\n\t\tname: 'block-library/core/navigation/permissions/update',\n\t} );\n\n\tconst {\n\t\tcreate: createNavigationMenu,\n\t\tstatus: createNavigationMenuStatus,\n\t\terror: createNavigationMenuError,\n\t\tvalue: createNavigationMenuPost,\n\t\tisPending: isCreatingNavigationMenu,\n\t\tisSuccess: createNavigationMenuIsSuccess,\n\t\tisError: createNavigationMenuIsError,\n\t} = useCreateNavigationMenu( clientId );\n\n\tconst createUntitledEmptyNavigationMenu = () => {\n\t\tcreateNavigationMenu( '' );\n\t};\n\n\tuseEffect( () => {\n\t\thideNavigationMenuStatusNotice();\n\n\t\tif ( isCreatingNavigationMenu ) {\n\t\t\tspeak( __( `Creating Navigation Menu.` ) );\n\t\t}\n\n\t\tif ( createNavigationMenuIsSuccess ) {\n\t\t\thandleUpdateMenu( createNavigationMenuPost.id, {\n\t\t\t\tfocusNavigationBlock: true,\n\t\t\t} );\n\n\t\t\tshowNavigationMenuStatusNotice(\n\t\t\t\t__( `Navigation Menu successfully created.` )\n\t\t\t);\n\t\t}\n\n\t\tif ( createNavigationMenuIsError ) {\n\t\t\tshowNavigationMenuStatusNotice(\n\t\t\t\t__( 'Failed to create Navigation Menu.' )\n\t\t\t);\n\t\t}\n\t}, [\n\t\tcreateNavigationMenuStatus,\n\t\tcreateNavigationMenuError,\n\t\tcreateNavigationMenuPost,\n\t] );\n\n\tconst {\n\t\thasUncontrolledInnerBlocks,\n\t\tuncontrolledInnerBlocks,\n\t\tisInnerBlockSelected,\n\t\tinnerBlocks,\n\t} = useInnerBlocks( clientId );\n\n\tconst hasSubmenus = !! innerBlocks.find(\n\t\t( block ) => block.name === 'core/navigation-submenu'\n\t);\n\n\tconst {\n\t\treplaceInnerBlocks,\n\t\tselectBlock,\n\t\t__unstableMarkNextChangeAsNotPersistent,\n\t} = useDispatch( blockEditorStore );\n\n\tconst [ isResponsiveMenuOpen, setResponsiveMenuVisibility ] =\n\t\tuseState( false );\n\n\tconst [ overlayMenuPreview, setOverlayMenuPreview ] = useState( false );\n\n\tconst {\n\t\thasResolvedNavigationMenus,\n\t\tisNavigationMenuResolved,\n\t\tisNavigationMenuMissing,\n\t\tnavigationMenus,\n\t\tnavigationMenu,\n\t\tcanUserUpdateNavigationMenu,\n\t\thasResolvedCanUserUpdateNavigationMenu,\n\t\tcanUserDeleteNavigationMenu,\n\t\thasResolvedCanUserDeleteNavigationMenu,\n\t\tcanUserCreateNavigationMenu,\n\t\tisResolvingCanUserCreateNavigationMenu,\n\t\thasResolvedCanUserCreateNavigationMenu,\n\t} = useNavigationMenu( ref );\n\n\tconst navMenuResolvedButMissing =\n\t\thasResolvedNavigationMenus && isNavigationMenuMissing;\n\n\tconst {\n\t\tconvert: convertClassicMenu,\n\t\tstatus: classicMenuConversionStatus,\n\t\terror: classicMenuConversionError,\n\t} = useConvertClassicToBlockMenu( clientId );\n\n\tconst isConvertingClassicMenu =\n\t\tclassicMenuConversionStatus === CLASSIC_MENU_CONVERSION_PENDING;\n\n\t// Only autofallback to published menus.\n\tconst fallbackNavigationMenus = useMemo(\n\t\t() =>\n\t\t\tnavigationMenus\n\t\t\t\t?.filter( ( menu ) => menu.status === 'publish' )\n\t\t\t\t?.sort( ( menuA, menuB ) => {\n\t\t\t\t\tconst menuADate = new Date( menuA.date );\n\t\t\t\t\tconst menuBDate = new Date( menuB.date );\n\t\t\t\t\treturn menuADate.getTime() < menuBDate.getTime();\n\t\t\t\t} ),\n\t\t[ navigationMenus ]\n\t);\n\n\t// Attempt to retrieve and prioritize any existing navigation menu unless:\n\t// - the are uncontrolled inner blocks already present in the block.\n\t// - the user is creating a new menu.\n\t// - there are no menus to choose from.\n\t// This attempts to pick the first menu if there is a single Navigation Post. If more\n\t// than 1 exists then use the most recent.\n\t// The aim is for the block to \"just work\" from a user perspective using existing data.\n\tuseEffect( () => {\n\t\tif (\n\t\t\thasUncontrolledInnerBlocks ||\n\t\t\tisCreatingNavigationMenu ||\n\t\t\tref ||\n\t\t\t! fallbackNavigationMenus?.length\n\t\t) {\n\t\t\treturn;\n\t\t}\n\n\t\t/**\n\t\t * This fallback displays (both in editor and on front)\n\t\t * a list of pages only if no menu (user assigned or\n\t\t * automatically picked) is available.\n\t\t * The fallback should not request a save (entity dirty state)\n\t\t * nor to be undoable, hence why it is marked as non persistent\n\t\t */\n\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\tsetRef( fallbackNavigationMenus[ 0 ].id );\n\t}, [\n\t\tref,\n\t\tisCreatingNavigationMenu,\n\t\tfallbackNavigationMenus,\n\t\thasUncontrolledInnerBlocks,\n\t] );\n\n\tuseEffect( () => {\n\t\tif (\n\t\t\t! hasResolvedNavigationMenus ||\n\t\t\tisConvertingClassicMenu ||\n\t\t\tfallbackNavigationMenus?.length > 0 ||\n\t\t\t! classicMenus?.length\n\t\t) {\n\t\t\treturn;\n\t\t}\n\n\t\t// If there's non fallback navigation menus and\n\t\t// a classic menu with a `primary` location or slug,\n\t\t// then create a new navigation menu based on it.\n\t\t// Otherwise, use the most recently created classic menu.\n\t\tconst primaryMenus = classicMenus.filter(\n\t\t\t( classicMenu ) =>\n\t\t\t\tclassicMenu.locations.includes( 'primary' ) ||\n\t\t\t\tclassicMenu.slug === 'primary'\n\t\t);\n\n\t\tif ( primaryMenus.length ) {\n\t\t\tconvertClassicMenu(\n\t\t\t\tprimaryMenus[ 0 ].id,\n\t\t\t\tprimaryMenus[ 0 ].name,\n\t\t\t\t'publish'\n\t\t\t);\n\t\t} else {\n\t\t\tclassicMenus.sort( ( a, b ) => {\n\t\t\t\treturn b.id - a.id;\n\t\t\t} );\n\t\t\tconvertClassicMenu(\n\t\t\t\tclassicMenus[ 0 ].id,\n\t\t\t\tclassicMenus[ 0 ].name,\n\t\t\t\t'publish'\n\t\t\t);\n\t\t}\n\t}, [ hasResolvedNavigationMenus ] );\n\n\tconst navRef = useRef();\n\n\t// The standard HTML5 tag for the block wrapper.\n\tconst TagName = 'nav';\n\n\t// \"placeholder\" shown if:\n\t// - there is no ref attribute pointing to a Navigation Post.\n\t// - there is no classic menu conversion process in progress.\n\t// - there is no menu creation process in progress.\n\t// - there are no uncontrolled blocks.\n\tconst isPlaceholder =\n\t\t! ref &&\n\t\t! isCreatingNavigationMenu &&\n\t\t! isConvertingClassicMenu &&\n\t\thasResolvedNavigationMenus &&\n\t\tclassicMenus?.length === 0 &&\n\t\t! hasUncontrolledInnerBlocks;\n\n\tuseEffect( () => {\n\t\tif ( isPlaceholder ) {\n\t\t\t/**\n\t\t\t * this fallback only displays (both in editor and on front)\n\t\t\t * the list of pages block if no menu is available as a fallback.\n\t\t\t * We don't want the fallback to request a save,\n\t\t\t * nor to be undoable, hence we mark it non persistent.\n\t\t\t */\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\treplaceInnerBlocks( clientId, [ createBlock( 'core/page-list' ) ] );\n\t\t}\n\t}, [ clientId, isPlaceholder, ref ] );\n\n\tconst isEntityAvailable =\n\t\t! isNavigationMenuMissing && isNavigationMenuResolved;\n\n\t// \"loading\" state:\n\t// - there is a menu creation process in progress.\n\t// - there is a classic menu conversion process in progress.\n\t// OR:\n\t// - there is a ref attribute pointing to a Navigation Post\n\t// - the Navigation Post isn't available (hasn't resolved) yet.\n\tconst isLoading =\n\t\t! hasResolvedNavigationMenus ||\n\t\tisCreatingNavigationMenu ||\n\t\tisConvertingClassicMenu ||\n\t\t!! ( ref && ! isEntityAvailable && ! isConvertingClassicMenu );\n\n\tconst textDecoration = attributes.style?.typography?.textDecoration;\n\n\tconst hasBlockOverlay = useBlockOverlayActive( clientId );\n\tconst blockProps = useBlockProps( {\n\t\tref: navRef,\n\t\tclassName: classnames( className, {\n\t\t\t'items-justified-right': justifyContent === 'right',\n\t\t\t'items-justified-space-between': justifyContent === 'space-between',\n\t\t\t'items-justified-left': justifyContent === 'left',\n\t\t\t'items-justified-center': justifyContent === 'center',\n\t\t\t'is-vertical': orientation === 'vertical',\n\t\t\t'no-wrap': flexWrap === 'nowrap',\n\t\t\t'is-responsive': 'never' !== overlayMenu,\n\t\t\t'has-text-color': !! textColor.color || !! textColor?.class,\n\t\t\t[ getColorClassName( 'color', textColor?.slug ) ]:\n\t\t\t\t!! textColor?.slug,\n\t\t\t'has-background': !! backgroundColor.color || backgroundColor.class,\n\t\t\t[ getColorClassName( 'background-color', backgroundColor?.slug ) ]:\n\t\t\t\t!! backgroundColor?.slug,\n\t\t\t[ `has-text-decoration-${ textDecoration }` ]: textDecoration,\n\t\t\t'block-editor-block-content-overlay': hasBlockOverlay,\n\t\t} ),\n\t\tstyle: {\n\t\t\tcolor: ! textColor?.slug && textColor?.color,\n\t\t\tbackgroundColor: ! backgroundColor?.slug && backgroundColor?.color,\n\t\t},\n\t} );\n\n\t// Turn on contrast checker for web only since it's not supported on mobile yet.\n\tconst enableContrastChecking = Platform.OS === 'web';\n\n\tconst [ detectedBackgroundColor, setDetectedBackgroundColor ] = useState();\n\tconst [ detectedColor, setDetectedColor ] = useState();\n\tconst [\n\t\tdetectedOverlayBackgroundColor,\n\t\tsetDetectedOverlayBackgroundColor,\n\t] = useState();\n\tconst [ detectedOverlayColor, setDetectedOverlayColor ] = useState();\n\n\tconst handleUpdateMenu = (\n\t\tmenuId,\n\t\toptions = { focusNavigationBlock: false }\n\t) => {\n\t\tconst { focusNavigationBlock } = options;\n\t\tsetRef( menuId );\n\t\tif ( focusNavigationBlock ) {\n\t\t\tselectBlock( clientId );\n\t\t}\n\t};\n\n\tconst onSelectClassicMenu = async ( classicMenu ) => {\n\t\tconst navMenu = await convertClassicMenu(\n\t\t\tclassicMenu.id,\n\t\t\tclassicMenu.name,\n\t\t\t'draft'\n\t\t);\n\t\tif ( navMenu ) {\n\t\t\thandleUpdateMenu( navMenu.id, {\n\t\t\t\tfocusNavigationBlock: true,\n\t\t\t} );\n\t\t}\n\t};\n\n\tconst onSelectNavigationMenu = ( menuId ) => {\n\t\thandleUpdateMenu( menuId );\n\t};\n\n\tuseEffect( () => {\n\t\thideClassicMenuConversionNotice();\n\t\tif ( classicMenuConversionStatus === CLASSIC_MENU_CONVERSION_PENDING ) {\n\t\t\tspeak( __( 'Classic menu importing.' ) );\n\t\t}\n\n\t\tif ( classicMenuConversionStatus === CLASSIC_MENU_CONVERSION_SUCCESS ) {\n\t\t\tshowClassicMenuConversionNotice(\n\t\t\t\t__( 'Classic menu imported successfully.' )\n\t\t\t);\n\t\t}\n\n\t\tif ( classicMenuConversionStatus === CLASSIC_MENU_CONVERSION_ERROR ) {\n\t\t\tshowClassicMenuConversionNotice(\n\t\t\t\t__( 'Classic menu import failed.' )\n\t\t\t);\n\t\t}\n\t}, [ classicMenuConversionStatus, classicMenuConversionError ] );\n\n\t// Spacer block needs orientation from context. This is a patch until\n\t// https://github.com/WordPress/gutenberg/issues/36197 is addressed.\n\tuseEffect( () => {\n\t\tif ( orientation ) {\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\tsetAttributes( { orientation } );\n\t\t}\n\t}, [ orientation ] );\n\n\tuseEffect( () => {\n\t\tif ( ! enableContrastChecking ) {\n\t\t\treturn;\n\t\t}\n\t\tdetectColors(\n\t\t\tnavRef.current,\n\t\t\tsetDetectedColor,\n\t\t\tsetDetectedBackgroundColor\n\t\t);\n\t\tconst subMenuElement = navRef.current?.querySelector(\n\t\t\t'[data-type=\"core/navigation-link\"] [data-type=\"core/navigation-link\"]'\n\t\t);\n\t\tif ( subMenuElement ) {\n\t\t\tdetectColors(\n\t\t\t\tsubMenuElement,\n\t\t\t\tsetDetectedOverlayColor,\n\t\t\t\tsetDetectedOverlayBackgroundColor\n\t\t\t);\n\t\t}\n\t} );\n\n\tuseEffect( () => {\n\t\tif ( ! isSelected && ! isInnerBlockSelected ) {\n\t\t\thideNavigationMenuPermissionsNotice();\n\t\t}\n\n\t\tif ( isSelected || isInnerBlockSelected ) {\n\t\t\tif (\n\t\t\t\tref &&\n\t\t\t\t! navMenuResolvedButMissing &&\n\t\t\t\thasResolvedCanUserUpdateNavigationMenu &&\n\t\t\t\t! canUserUpdateNavigationMenu\n\t\t\t) {\n\t\t\t\tshowNavigationMenuPermissionsNotice(\n\t\t\t\t\t__(\n\t\t\t\t\t\t'You do not have permission to edit this Menu. Any changes made will not be saved.'\n\t\t\t\t\t)\n\t\t\t\t);\n\t\t\t}\n\n\t\t\tif (\n\t\t\t\t! ref &&\n\t\t\t\thasResolvedCanUserCreateNavigationMenu &&\n\t\t\t\t! canUserCreateNavigationMenu\n\t\t\t) {\n\t\t\t\tshowNavigationMenuPermissionsNotice(\n\t\t\t\t\t__(\n\t\t\t\t\t\t'You do not have permission to create Navigation Menus.'\n\t\t\t\t\t)\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\t}, [\n\t\tisSelected,\n\t\tisInnerBlockSelected,\n\t\tcanUserUpdateNavigationMenu,\n\t\thasResolvedCanUserUpdateNavigationMenu,\n\t\tcanUserCreateNavigationMenu,\n\t\thasResolvedCanUserCreateNavigationMenu,\n\t\tref,\n\t] );\n\n\tconst hasManagePermissions =\n\t\tcanUserCreateNavigationMenu || canUserUpdateNavigationMenu;\n\tconst isResponsive = 'never' !== overlayMenu;\n\n\tconst overlayMenuPreviewClasses = classnames(\n\t\t'wp-block-navigation__overlay-menu-preview',\n\t\t{ open: overlayMenuPreview }\n\t);\n\n\t// Prompt the user to publish the menu they have set as a draft\n\tconst isDraftNavigationMenu = navigationMenu?.status === 'draft';\n\tuseEffect( () => {\n\t\thideMenuAutoPublishDraftNotice();\n\t\tif ( ! isDraftNavigationMenu ) {\n\t\t\treturn;\n\t\t}\n\t\teditEntityRecord(\n\t\t\t'postType',\n\t\t\t'wp_navigation',\n\t\t\tnavigationMenu?.id,\n\t\t\t{ status: 'publish' },\n\t\t\t{ throwOnError: true }\n\t\t).catch( () => {\n\t\t\tshowMenuAutoPublishDraftNotice(\n\t\t\t\t__( 'Error occurred while publishing the navigation menu.' )\n\t\t\t);\n\t\t} );\n\t}, [ isDraftNavigationMenu, navigationMenu ] );\n\n\tconst colorGradientSettings = useMultipleOriginColorsAndGradients();\n\tconst stylingInspectorControls = (\n\t\t<>\n\t\t\t<InspectorControls>\n\t\t\t\t{ hasSubmenuIndicatorSetting && (\n\t\t\t\t\t<PanelBody title={ __( 'Display' ) }>\n\t\t\t\t\t\t{ isResponsive && (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\tclassName={ overlayMenuPreviewClasses }\n\t\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\t\tsetOverlayMenuPreview(\n\t\t\t\t\t\t\t\t\t\t\t! overlayMenuPreview\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\t\t{ hasIcon && (\n\t\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t\t<OverlayMenuIcon icon={ icon } />\n\t\t\t\t\t\t\t\t\t\t\t<Icon icon={ close } />\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{ ! hasIcon && (\n\t\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t\t<span>{ __( 'Menu' ) }</span>\n\t\t\t\t\t\t\t\t\t\t\t<span>{ __( 'Close' ) }</span>\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</Button>\n\t\t\t\t\t\t\t\t{ overlayMenuPreview && (\n\t\t\t\t\t\t\t\t\t<OverlayMenuPreview\n\t\t\t\t\t\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\t\t\t\t\t\thasIcon={ hasIcon }\n\t\t\t\t\t\t\t\t\t\ticon={ icon }\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) }\n\t\t\t\t\t\t<h3>{ __( 'Overlay Menu' ) }</h3>\n\t\t\t\t\t\t<ToggleGroupControl\n\t\t\t\t\t\t\tlabel={ __( 'Configure overlay menu' ) }\n\t\t\t\t\t\t\tvalue={ overlayMenu }\n\t\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t\t'Collapses the navigation options in a menu icon opening an overlay.'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\tsetAttributes( { overlayMenu: value } )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tisBlock\n\t\t\t\t\t\t\thideLabelFromVision\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\t\tvalue=\"never\"\n\t\t\t\t\t\t\t\tlabel={ __( 'Off' ) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\t\tvalue=\"mobile\"\n\t\t\t\t\t\t\t\tlabel={ __( 'Mobile' ) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\t\tvalue=\"always\"\n\t\t\t\t\t\t\t\tlabel={ __( 'Always' ) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</ToggleGroupControl>\n\t\t\t\t\t\t{ hasSubmenus && (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t<h3>{ __( 'Submenus' ) }</h3>\n\t\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t\tchecked={ openSubmenusOnClick }\n\t\t\t\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\t\topenSubmenusOnClick: value,\n\t\t\t\t\t\t\t\t\t\t\t...( value && {\n\t\t\t\t\t\t\t\t\t\t\t\tshowSubmenuIcon: true,\n\t\t\t\t\t\t\t\t\t\t\t} ), // Make sure arrows are shown when we toggle this on.\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\tlabel={ __( 'Open on click' ) }\n\t\t\t\t\t\t\t\t/>\n\n\t\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t\tchecked={ showSubmenuIcon }\n\t\t\t\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\t\tshowSubmenuIcon: value,\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\tdisabled={ attributes.openSubmenusOnClick }\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Show arrow' ) }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</PanelBody>\n\t\t\t\t) }\n\t\t\t</InspectorControls>\n\t\t\t<InspectorControls __experimentalGroup=\"color\">\n\t\t\t\t{ hasColorSettings && (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<ColorGradientSettingsDropdown\n\t\t\t\t\t\t\t__experimentalHasMultipleOrigins\n\t\t\t\t\t\t\t__experimentalIsRenderedInSidebar\n\t\t\t\t\t\t\tsettings={ [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tcolorValue: textColor.color,\n\t\t\t\t\t\t\t\t\tlabel: __( 'Text' ),\n\t\t\t\t\t\t\t\t\tonColorChange: setTextColor,\n\t\t\t\t\t\t\t\t\tresetAllFilter: () => setTextColor(),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tcolorValue: backgroundColor.color,\n\t\t\t\t\t\t\t\t\tlabel: __( 'Background' ),\n\t\t\t\t\t\t\t\t\tonColorChange: setBackgroundColor,\n\t\t\t\t\t\t\t\t\tresetAllFilter: () => setBackgroundColor(),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tcolorValue: overlayTextColor.color,\n\t\t\t\t\t\t\t\t\tlabel: __( 'Submenu & overlay text' ),\n\t\t\t\t\t\t\t\t\tonColorChange: setOverlayTextColor,\n\t\t\t\t\t\t\t\t\tresetAllFilter: () => setOverlayTextColor(),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tcolorValue: overlayBackgroundColor.color,\n\t\t\t\t\t\t\t\t\tlabel: __( 'Submenu & overlay background' ),\n\t\t\t\t\t\t\t\t\tonColorChange: setOverlayBackgroundColor,\n\t\t\t\t\t\t\t\t\tresetAllFilter: () =>\n\t\t\t\t\t\t\t\t\t\tsetOverlayBackgroundColor(),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t] }\n\t\t\t\t\t\t\tpanelId={ clientId }\n\t\t\t\t\t\t\t{ ...colorGradientSettings }\n\t\t\t\t\t\t\tgradients={ [] }\n\t\t\t\t\t\t\tdisableCustomGradients={ true }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t{ enableContrastChecking && (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t<ContrastChecker\n\t\t\t\t\t\t\t\t\tbackgroundColor={ detectedBackgroundColor }\n\t\t\t\t\t\t\t\t\ttextColor={ detectedColor }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t<ContrastChecker\n\t\t\t\t\t\t\t\t\tbackgroundColor={\n\t\t\t\t\t\t\t\t\t\tdetectedOverlayBackgroundColor\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\ttextColor={ detectedOverlayColor }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</>\n\t\t\t\t) }\n\t\t\t</InspectorControls>\n\t\t</>\n\t);\n\n\t// If the block has inner blocks, but no menu id, then these blocks are either:\n\t// - inserted via a pattern.\n\t// - inserted directly via Code View (or otherwise).\n\t// - from an older version of navigation block added before the block used a wp_navigation entity.\n\t// Consider this state as 'unsaved' and offer an uncontrolled version of inner blocks,\n\t// that automatically saves the menu as an entity when changes are made to the inner blocks.\n\tconst hasUnsavedBlocks = hasUncontrolledInnerBlocks && ! isEntityAvailable;\n\n\tconst isManageMenusButtonDisabled =\n\t\t! hasManagePermissions || ! hasResolvedNavigationMenus;\n\n\tif ( hasUnsavedBlocks && ! isCreatingNavigationMenu ) {\n\t\treturn (\n\t\t\t<TagName { ...blockProps }>\n\t\t\t\t<MenuInspectorControls\n\t\t\t\t\tcreateNavigationMenuIsSuccess={\n\t\t\t\t\t\tcreateNavigationMenuIsSuccess\n\t\t\t\t\t}\n\t\t\t\t\tcreateNavigationMenuIsError={ createNavigationMenuIsError }\n\t\t\t\t\tcurrentMenuId={ ref }\n\t\t\t\t\tisNavigationMenuMissing={ isNavigationMenuMissing }\n\t\t\t\t\tinnerBlocks={ innerBlocks }\n\t\t\t\t\tisManageMenusButtonDisabled={ isManageMenusButtonDisabled }\n\t\t\t\t\tonCreateNew={ createUntitledEmptyNavigationMenu }\n\t\t\t\t\tonSelectClassicMenu={ onSelectClassicMenu }\n\t\t\t\t\tonSelectNavigationMenu={ onSelectNavigationMenu }\n\t\t\t\t/>\n\t\t\t\t{ stylingInspectorControls }\n\t\t\t\t<ResponsiveWrapper\n\t\t\t\t\tid={ clientId }\n\t\t\t\t\tonToggle={ setResponsiveMenuVisibility }\n\t\t\t\t\tisOpen={ isResponsiveMenuOpen }\n\t\t\t\t\thasIcon={ hasIcon }\n\t\t\t\t\ticon={ icon }\n\t\t\t\t\tisResponsive={ 'never' !== overlayMenu }\n\t\t\t\t\tisHiddenByDefault={ 'always' === overlayMenu }\n\t\t\t\t\toverlayBackgroundColor={ overlayBackgroundColor }\n\t\t\t\t\toverlayTextColor={ overlayTextColor }\n\t\t\t\t>\n\t\t\t\t\t<UnsavedInnerBlocks\n\t\t\t\t\t\tcreateNavigationMenu={ createNavigationMenu }\n\t\t\t\t\t\tblocks={ uncontrolledInnerBlocks }\n\t\t\t\t\t\ttemplateLock={ templateLock }\n\t\t\t\t\t\tnavigationMenus={ navigationMenus }\n\t\t\t\t\t\thasSelection={ isSelected || isInnerBlockSelected }\n\t\t\t\t\t/>\n\t\t\t\t</ResponsiveWrapper>\n\t\t\t</TagName>\n\t\t);\n\t}\n\n\t// Show a warning if the selected menu is no longer available.\n\t// TODO - the user should be able to select a new one?\n\tif ( ref && isNavigationMenuMissing ) {\n\t\treturn (\n\t\t\t<TagName { ...blockProps }>\n\t\t\t\t<MenuInspectorControls\n\t\t\t\t\tcreateNavigationMenuIsSuccess={\n\t\t\t\t\t\tcreateNavigationMenuIsSuccess\n\t\t\t\t\t}\n\t\t\t\t\tcreateNavigationMenuIsError={ createNavigationMenuIsError }\n\t\t\t\t\tisNavigationMenuMissing={ isNavigationMenuMissing }\n\t\t\t\t\tinnerBlocks={ innerBlocks }\n\t\t\t\t\tisManageMenusButtonDisabled={ isManageMenusButtonDisabled }\n\t\t\t\t\tonCreateNew={ createUntitledEmptyNavigationMenu }\n\t\t\t\t\tonSelectClassicMenu={ onSelectClassicMenu }\n\t\t\t\t\tonSelectNavigationMenu={ onSelectNavigationMenu }\n\t\t\t\t/>\n\t\t\t\t<Warning>\n\t\t\t\t\t{ __(\n\t\t\t\t\t\t'Navigation menu has been deleted or is unavailable. '\n\t\t\t\t\t) }\n\t\t\t\t\t<Button\n\t\t\t\t\t\tonClick={ createUntitledEmptyNavigationMenu }\n\t\t\t\t\t\tvariant=\"link\"\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Create a new menu?' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t</Warning>\n\t\t\t</TagName>\n\t\t);\n\t}\n\n\tif ( isEntityAvailable && hasAlreadyRendered ) {\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t<Warning>\n\t\t\t\t\t{ __( 'Block cannot be rendered inside itself.' ) }\n\t\t\t\t</Warning>\n\t\t\t</div>\n\t\t);\n\t}\n\n\tconst PlaceholderComponent = CustomPlaceholder\n\t\t? CustomPlaceholder\n\t\t: Placeholder;\n\n\t/**\n\t * Historically the navigation block has supported custom placeholders.\n\t * Even though the current UX tries as hard as possible not to\n\t * end up in a placeholder state, the block continues to support\n\t * this extensibility point, via a CustomPlaceholder.\n\t * When CustomPlaceholder is present it becomes the default fallback\n\t * for an empty navigation block, instead of the default fallbacks.\n\t *\n\t */\n\n\tif ( isPlaceholder && CustomPlaceholder ) {\n\t\treturn (\n\t\t\t<TagName { ...blockProps }>\n\t\t\t\t<PlaceholderComponent\n\t\t\t\t\tisSelected={ isSelected }\n\t\t\t\t\tcurrentMenuId={ ref }\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\tcanUserCreateNavigationMenu={ canUserCreateNavigationMenu }\n\t\t\t\t\tisResolvingCanUserCreateNavigationMenu={\n\t\t\t\t\t\tisResolvingCanUserCreateNavigationMenu\n\t\t\t\t\t}\n\t\t\t\t\tonSelectNavigationMenu={ onSelectNavigationMenu }\n\t\t\t\t\tonSelectClassicMenu={ onSelectClassicMenu }\n\t\t\t\t\tonCreateEmpty={ createUntitledEmptyNavigationMenu }\n\t\t\t\t/>\n\t\t\t</TagName>\n\t\t);\n\t}\n\n\treturn (\n\t\t<EntityProvider kind=\"postType\" type=\"wp_navigation\" id={ ref }>\n\t\t\t<RecursionProvider uniqueId={ recursionId }>\n\t\t\t\t<MenuInspectorControls\n\t\t\t\t\tcreateNavigationMenuIsSuccess={\n\t\t\t\t\t\tcreateNavigationMenuIsSuccess\n\t\t\t\t\t}\n\t\t\t\t\tcreateNavigationMenuIsError={ createNavigationMenuIsError }\n\t\t\t\t\tcurrentMenuId={ ref }\n\t\t\t\t\tisNavigationMenuMissing={ isNavigationMenuMissing }\n\t\t\t\t\tinnerBlocks={ innerBlocks }\n\t\t\t\t\tisManageMenusButtonDisabled={ isManageMenusButtonDisabled }\n\t\t\t\t\tonCreateNew={ createUntitledEmptyNavigationMenu }\n\t\t\t\t\tonSelectClassicMenu={ onSelectClassicMenu }\n\t\t\t\t\tonSelectNavigationMenu={ onSelectNavigationMenu }\n\t\t\t\t/>\n\t\t\t\t{ stylingInspectorControls }\n\t\t\t\t{ isEntityAvailable && (\n\t\t\t\t\t<InspectorControls __experimentalGroup=\"advanced\">\n\t\t\t\t\t\t{ hasResolvedCanUserUpdateNavigationMenu &&\n\t\t\t\t\t\t\tcanUserUpdateNavigationMenu && (\n\t\t\t\t\t\t\t\t<NavigationMenuNameControl />\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ hasResolvedCanUserDeleteNavigationMenu &&\n\t\t\t\t\t\t\tcanUserDeleteNavigationMenu && (\n\t\t\t\t\t\t\t\t<NavigationMenuDeleteControl\n\t\t\t\t\t\t\t\t\tonDelete={ ( deletedMenuTitle = '' ) => {\n\t\t\t\t\t\t\t\t\t\treplaceInnerBlocks( clientId, [] );\n\t\t\t\t\t\t\t\t\t\tshowNavigationMenuStatusNotice(\n\t\t\t\t\t\t\t\t\t\t\tsprintf(\n\t\t\t\t\t\t\t\t\t\t\t\t// translators: %s: the name of a menu (e.g. Header navigation).\n\t\t\t\t\t\t\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t\t\t\t\t\t\t'Navigation menu %s successfully deleted.'\n\t\t\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t\t\t\tdeletedMenuTitle\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/>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ isOffCanvasNavigationEditorEnabled && (\n\t\t\t\t\t\t\t<ManageMenusButton\n\t\t\t\t\t\t\t\tdisabled={ isManageMenusButtonDisabled }\n\t\t\t\t\t\t\t\tclassName=\"wp-block-navigation-manage-menus-button\"\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</InspectorControls>\n\t\t\t\t) }\n\n\t\t\t\t{ isLoading && (\n\t\t\t\t\t<TagName { ...blockProps }>\n\t\t\t\t\t\t<Spinner className=\"wp-block-navigation__loading-indicator\" />\n\t\t\t\t\t</TagName>\n\t\t\t\t) }\n\n\t\t\t\t{ ! isLoading && (\n\t\t\t\t\t<TagName { ...blockProps }>\n\t\t\t\t\t\t<ResponsiveWrapper\n\t\t\t\t\t\t\tid={ clientId }\n\t\t\t\t\t\t\tonToggle={ setResponsiveMenuVisibility }\n\t\t\t\t\t\t\tlabel={ __( 'Menu' ) }\n\t\t\t\t\t\t\thasIcon={ hasIcon }\n\t\t\t\t\t\t\ticon={ icon }\n\t\t\t\t\t\t\tisOpen={ isResponsiveMenuOpen }\n\t\t\t\t\t\t\tisResponsive={ isResponsive }\n\t\t\t\t\t\t\tisHiddenByDefault={ 'always' === overlayMenu }\n\t\t\t\t\t\t\toverlayBackgroundColor={ overlayBackgroundColor }\n\t\t\t\t\t\t\toverlayTextColor={ overlayTextColor }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ isEntityAvailable && (\n\t\t\t\t\t\t\t\t<NavigationInnerBlocks\n\t\t\t\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\t\t\t\thasCustomPlaceholder={\n\t\t\t\t\t\t\t\t\t\t!! CustomPlaceholder\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\ttemplateLock={ templateLock }\n\t\t\t\t\t\t\t\t\torientation={ orientation }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</ResponsiveWrapper>\n\t\t\t\t\t</TagName>\n\t\t\t\t) }\n\t\t\t</RecursionProvider>\n\t\t</EntityProvider>\n\t);\n}\n\nexport default withColors(\n\t{ textColor: 'color' },\n\t{ backgroundColor: 'color' },\n\t{ overlayBackgroundColor: 'color' },\n\t{ overlayTextColor: 'color' }\n)( Navigation );\n"]}
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/navigation/edit/index.js"],"names":["Navigation","attributes","setAttributes","clientId","isSelected","className","backgroundColor","setBackgroundColor","textColor","setTextColor","overlayBackgroundColor","setOverlayBackgroundColor","overlayTextColor","setOverlayTextColor","hasSubmenuIndicatorSetting","hasColorSettings","customPlaceholder","CustomPlaceholder","isOffCanvasNavigationEditorEnabled","window","__experimentalEnableOffCanvasNavigationEditor","openSubmenusOnClick","overlayMenu","showSubmenuIcon","templateLock","layout","justifyContent","orientation","flexWrap","hasIcon","icon","ref","setRef","postId","recursionId","hasAlreadyRendered","editEntityRecord","coreStore","menus","classicMenus","showNavigationMenuStatusNotice","hideNavigationMenuStatusNotice","name","showClassicMenuConversionNotice","hideClassicMenuConversionNotice","showMenuAutoPublishDraftNotice","hideMenuAutoPublishDraftNotice","showNavigationMenuPermissionsNotice","hideNavigationMenuPermissionsNotice","create","createNavigationMenu","status","createNavigationMenuStatus","error","createNavigationMenuError","value","createNavigationMenuPost","isPending","isCreatingNavigationMenu","isSuccess","createNavigationMenuIsSuccess","isError","createNavigationMenuIsError","createUntitledEmptyNavigationMenu","handleUpdateMenu","id","focusNavigationBlock","hasUncontrolledInnerBlocks","uncontrolledInnerBlocks","isInnerBlockSelected","innerBlocks","hasSubmenus","find","block","replaceInnerBlocks","selectBlock","__unstableMarkNextChangeAsNotPersistent","blockEditorStore","isResponsiveMenuOpen","setResponsiveMenuVisibility","overlayMenuPreview","setOverlayMenuPreview","hasResolvedNavigationMenus","isNavigationMenuResolved","isNavigationMenuMissing","navigationMenus","navigationMenu","canUserUpdateNavigationMenu","hasResolvedCanUserUpdateNavigationMenu","canUserDeleteNavigationMenu","hasResolvedCanUserDeleteNavigationMenu","canUserCreateNavigationMenu","isResolvingCanUserCreateNavigationMenu","hasResolvedCanUserCreateNavigationMenu","navMenuResolvedButMissing","convert","convertClassicMenu","classicMenuConversionStatus","classicMenuConversionError","isConvertingClassicMenu","CLASSIC_MENU_CONVERSION_PENDING","fallbackNavigationMenus","filter","menu","sort","menuA","menuB","menuADate","Date","date","menuBDate","getTime","length","primaryMenus","classicMenu","locations","includes","slug","a","b","navRef","TagName","isPlaceholder","isEntityAvailable","isLoading","textDecoration","style","typography","hasBlockOverlay","blockProps","color","class","enableContrastChecking","Platform","OS","detectedBackgroundColor","setDetectedBackgroundColor","detectedColor","setDetectedColor","detectedOverlayBackgroundColor","setDetectedOverlayBackgroundColor","detectedOverlayColor","setDetectedOverlayColor","menuId","options","onSelectClassicMenu","navMenu","onSelectNavigationMenu","CLASSIC_MENU_CONVERSION_SUCCESS","CLASSIC_MENU_CONVERSION_ERROR","current","subMenuElement","querySelector","hasManagePermissions","isResponsive","overlayMenuPreviewClasses","open","isDraftNavigationMenu","throwOnError","catch","colorGradientSettings","stylingInspectorControls","close","colorValue","label","onColorChange","resetAllFilter","hasUnsavedBlocks","isManageMenusButtonDisabled","PlaceholderComponent","Placeholder","deletedMenuTitle"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tuseState,\n\tuseEffect,\n\tuseRef,\n\tPlatform,\n\tuseMemo,\n} from '@wordpress/element';\nimport {\n\tInspectorControls,\n\tuseBlockProps,\n\t__experimentalRecursionProvider as RecursionProvider,\n\t__experimentalUseHasRecursion as useHasRecursion,\n\tstore as blockEditorStore,\n\twithColors,\n\tContrastChecker,\n\tgetColorClassName,\n\tWarning,\n\t__experimentalColorGradientSettingsDropdown as ColorGradientSettingsDropdown,\n\t__experimentalUseBlockOverlayActive as useBlockOverlayActive,\n\t__experimentalUseMultipleOriginColorsAndGradients as useMultipleOriginColorsAndGradients,\n} from '@wordpress/block-editor';\nimport { EntityProvider, store as coreStore } from '@wordpress/core-data';\n\nimport { useDispatch } from '@wordpress/data';\nimport {\n\tPanelBody,\n\tToggleControl,\n\t__experimentalToggleGroupControl as ToggleGroupControl,\n\t__experimentalToggleGroupControlOption as ToggleGroupControlOption,\n\tButton,\n\tSpinner,\n} from '@wordpress/components';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { speak } from '@wordpress/a11y';\nimport { createBlock } from '@wordpress/blocks';\nimport { close, Icon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport useNavigationMenu from '../use-navigation-menu';\nimport useNavigationEntities from '../use-navigation-entities';\nimport Placeholder from './placeholder';\nimport ResponsiveWrapper from './responsive-wrapper';\nimport NavigationInnerBlocks from './inner-blocks';\nimport NavigationMenuNameControl from './navigation-menu-name-control';\nimport UnsavedInnerBlocks from './unsaved-inner-blocks';\nimport NavigationMenuDeleteControl from './navigation-menu-delete-control';\nimport useNavigationNotice from './use-navigation-notice';\nimport OverlayMenuIcon from './overlay-menu-icon';\nimport OverlayMenuPreview from './overlay-menu-preview';\nimport useConvertClassicToBlockMenu, {\n\tCLASSIC_MENU_CONVERSION_ERROR,\n\tCLASSIC_MENU_CONVERSION_PENDING,\n\tCLASSIC_MENU_CONVERSION_SUCCESS,\n} from './use-convert-classic-menu-to-block-menu';\nimport useCreateNavigationMenu from './use-create-navigation-menu';\nimport { useInnerBlocks } from './use-inner-blocks';\nimport { detectColors } from './utils';\nimport ManageMenusButton from './manage-menus-button';\nimport MenuInspectorControls from './menu-inspector-controls';\n\nfunction Navigation( {\n\tattributes,\n\tsetAttributes,\n\tclientId,\n\tisSelected,\n\tclassName,\n\tbackgroundColor,\n\tsetBackgroundColor,\n\ttextColor,\n\tsetTextColor,\n\toverlayBackgroundColor,\n\tsetOverlayBackgroundColor,\n\toverlayTextColor,\n\tsetOverlayTextColor,\n\n\t// These props are used by the navigation editor to override specific\n\t// navigation block settings.\n\thasSubmenuIndicatorSetting = true,\n\thasColorSettings = true,\n\tcustomPlaceholder: CustomPlaceholder = null,\n} ) {\n\tconst isOffCanvasNavigationEditorEnabled =\n\t\twindow?.__experimentalEnableOffCanvasNavigationEditor === true;\n\n\tconst {\n\t\topenSubmenusOnClick,\n\t\toverlayMenu,\n\t\tshowSubmenuIcon,\n\t\ttemplateLock,\n\t\tlayout: {\n\t\t\tjustifyContent,\n\t\t\torientation = 'horizontal',\n\t\t\tflexWrap = 'wrap',\n\t\t} = {},\n\t\thasIcon,\n\t\ticon = 'handle',\n\t} = attributes;\n\n\tconst ref = attributes.ref;\n\n\tconst setRef = ( postId ) => {\n\t\tsetAttributes( { ref: postId } );\n\t};\n\n\tconst recursionId = `navigationMenu/${ ref }`;\n\tconst hasAlreadyRendered = useHasRecursion( recursionId );\n\tconst { editEntityRecord } = useDispatch( coreStore );\n\n\t// Preload classic menus, so that they don't suddenly pop-in when viewing\n\t// the Select Menu dropdown.\n\tconst { menus: classicMenus } = useNavigationEntities();\n\n\tconst [ showNavigationMenuStatusNotice, hideNavigationMenuStatusNotice ] =\n\t\tuseNavigationNotice( {\n\t\t\tname: 'block-library/core/navigation/status',\n\t\t} );\n\n\tconst [ showClassicMenuConversionNotice, hideClassicMenuConversionNotice ] =\n\t\tuseNavigationNotice( {\n\t\t\tname: 'block-library/core/navigation/classic-menu-conversion',\n\t\t} );\n\n\tconst [ showMenuAutoPublishDraftNotice, hideMenuAutoPublishDraftNotice ] =\n\t\tuseNavigationNotice( {\n\t\t\tname: 'block-library/core/navigation/auto-publish-draft',\n\t\t} );\n\n\tconst [\n\t\tshowNavigationMenuPermissionsNotice,\n\t\thideNavigationMenuPermissionsNotice,\n\t] = useNavigationNotice( {\n\t\tname: 'block-library/core/navigation/permissions/update',\n\t} );\n\n\tconst {\n\t\tcreate: createNavigationMenu,\n\t\tstatus: createNavigationMenuStatus,\n\t\terror: createNavigationMenuError,\n\t\tvalue: createNavigationMenuPost,\n\t\tisPending: isCreatingNavigationMenu,\n\t\tisSuccess: createNavigationMenuIsSuccess,\n\t\tisError: createNavigationMenuIsError,\n\t} = useCreateNavigationMenu( clientId );\n\n\tconst createUntitledEmptyNavigationMenu = () => {\n\t\tcreateNavigationMenu( '' );\n\t};\n\n\tuseEffect( () => {\n\t\thideNavigationMenuStatusNotice();\n\n\t\tif ( isCreatingNavigationMenu ) {\n\t\t\tspeak( __( `Creating Navigation Menu.` ) );\n\t\t}\n\n\t\tif ( createNavigationMenuIsSuccess ) {\n\t\t\thandleUpdateMenu( createNavigationMenuPost.id, {\n\t\t\t\tfocusNavigationBlock: true,\n\t\t\t} );\n\n\t\t\tshowNavigationMenuStatusNotice(\n\t\t\t\t__( `Navigation Menu successfully created.` )\n\t\t\t);\n\t\t}\n\n\t\tif ( createNavigationMenuIsError ) {\n\t\t\tshowNavigationMenuStatusNotice(\n\t\t\t\t__( 'Failed to create Navigation Menu.' )\n\t\t\t);\n\t\t}\n\t}, [\n\t\tcreateNavigationMenuStatus,\n\t\tcreateNavigationMenuError,\n\t\tcreateNavigationMenuPost,\n\t] );\n\n\tconst {\n\t\thasUncontrolledInnerBlocks,\n\t\tuncontrolledInnerBlocks,\n\t\tisInnerBlockSelected,\n\t\tinnerBlocks,\n\t} = useInnerBlocks( clientId );\n\n\tconst hasSubmenus = !! innerBlocks.find(\n\t\t( block ) => block.name === 'core/navigation-submenu'\n\t);\n\n\tconst {\n\t\treplaceInnerBlocks,\n\t\tselectBlock,\n\t\t__unstableMarkNextChangeAsNotPersistent,\n\t} = useDispatch( blockEditorStore );\n\n\tconst [ isResponsiveMenuOpen, setResponsiveMenuVisibility ] =\n\t\tuseState( false );\n\n\tconst [ overlayMenuPreview, setOverlayMenuPreview ] = useState( false );\n\n\tconst {\n\t\thasResolvedNavigationMenus,\n\t\tisNavigationMenuResolved,\n\t\tisNavigationMenuMissing,\n\t\tnavigationMenus,\n\t\tnavigationMenu,\n\t\tcanUserUpdateNavigationMenu,\n\t\thasResolvedCanUserUpdateNavigationMenu,\n\t\tcanUserDeleteNavigationMenu,\n\t\thasResolvedCanUserDeleteNavigationMenu,\n\t\tcanUserCreateNavigationMenu,\n\t\tisResolvingCanUserCreateNavigationMenu,\n\t\thasResolvedCanUserCreateNavigationMenu,\n\t} = useNavigationMenu( ref );\n\n\tconst navMenuResolvedButMissing =\n\t\thasResolvedNavigationMenus && isNavigationMenuMissing;\n\n\tconst {\n\t\tconvert: convertClassicMenu,\n\t\tstatus: classicMenuConversionStatus,\n\t\terror: classicMenuConversionError,\n\t} = useConvertClassicToBlockMenu( clientId );\n\n\tconst isConvertingClassicMenu =\n\t\tclassicMenuConversionStatus === CLASSIC_MENU_CONVERSION_PENDING;\n\n\t// Only autofallback to published menus.\n\tconst fallbackNavigationMenus = useMemo(\n\t\t() =>\n\t\t\tnavigationMenus\n\t\t\t\t?.filter( ( menu ) => menu.status === 'publish' )\n\t\t\t\t?.sort( ( menuA, menuB ) => {\n\t\t\t\t\tconst menuADate = new Date( menuA.date );\n\t\t\t\t\tconst menuBDate = new Date( menuB.date );\n\t\t\t\t\treturn menuADate.getTime() < menuBDate.getTime();\n\t\t\t\t} ),\n\t\t[ navigationMenus ]\n\t);\n\n\t// Attempt to retrieve and prioritize any existing navigation menu unless:\n\t// - the are uncontrolled inner blocks already present in the block.\n\t// - the user is creating a new menu.\n\t// - there are no menus to choose from.\n\t// This attempts to pick the first menu if there is a single Navigation Post. If more\n\t// than 1 exists then use the most recent.\n\t// The aim is for the block to \"just work\" from a user perspective using existing data.\n\tuseEffect( () => {\n\t\tif (\n\t\t\thasUncontrolledInnerBlocks ||\n\t\t\tisCreatingNavigationMenu ||\n\t\t\tref ||\n\t\t\t! fallbackNavigationMenus?.length\n\t\t) {\n\t\t\treturn;\n\t\t}\n\n\t\t/**\n\t\t * This fallback displays (both in editor and on front)\n\t\t * a list of pages only if no menu (user assigned or\n\t\t * automatically picked) is available.\n\t\t * The fallback should not request a save (entity dirty state)\n\t\t * nor to be undoable, hence why it is marked as non persistent\n\t\t */\n\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\tsetRef( fallbackNavigationMenus[ 0 ].id );\n\t}, [\n\t\tref,\n\t\tisCreatingNavigationMenu,\n\t\tfallbackNavigationMenus,\n\t\thasUncontrolledInnerBlocks,\n\t] );\n\n\tuseEffect( () => {\n\t\tif (\n\t\t\t! hasResolvedNavigationMenus ||\n\t\t\tisConvertingClassicMenu ||\n\t\t\tfallbackNavigationMenus?.length > 0 ||\n\t\t\t! classicMenus?.length\n\t\t) {\n\t\t\treturn;\n\t\t}\n\n\t\t// If there's non fallback navigation menus and\n\t\t// a classic menu with a `primary` location or slug,\n\t\t// then create a new navigation menu based on it.\n\t\t// Otherwise, use the most recently created classic menu.\n\t\tconst primaryMenus = classicMenus.filter(\n\t\t\t( classicMenu ) =>\n\t\t\t\tclassicMenu.locations.includes( 'primary' ) ||\n\t\t\t\tclassicMenu.slug === 'primary'\n\t\t);\n\n\t\tif ( primaryMenus.length ) {\n\t\t\tconvertClassicMenu(\n\t\t\t\tprimaryMenus[ 0 ].id,\n\t\t\t\tprimaryMenus[ 0 ].name,\n\t\t\t\t'publish'\n\t\t\t);\n\t\t} else {\n\t\t\tclassicMenus.sort( ( a, b ) => {\n\t\t\t\treturn b.id - a.id;\n\t\t\t} );\n\t\t\tconvertClassicMenu(\n\t\t\t\tclassicMenus[ 0 ].id,\n\t\t\t\tclassicMenus[ 0 ].name,\n\t\t\t\t'publish'\n\t\t\t);\n\t\t}\n\t}, [ hasResolvedNavigationMenus ] );\n\n\tconst navRef = useRef();\n\n\t// The standard HTML5 tag for the block wrapper.\n\tconst TagName = 'nav';\n\n\t// \"placeholder\" shown if:\n\t// - there is no ref attribute pointing to a Navigation Post.\n\t// - there is no classic menu conversion process in progress.\n\t// - there is no menu creation process in progress.\n\t// - there are no uncontrolled blocks.\n\tconst isPlaceholder =\n\t\t! ref &&\n\t\t! isCreatingNavigationMenu &&\n\t\t! isConvertingClassicMenu &&\n\t\thasResolvedNavigationMenus &&\n\t\tclassicMenus?.length === 0 &&\n\t\t! hasUncontrolledInnerBlocks;\n\n\tuseEffect( () => {\n\t\tif ( isPlaceholder ) {\n\t\t\t/**\n\t\t\t * this fallback only displays (both in editor and on front)\n\t\t\t * the list of pages block if no menu is available as a fallback.\n\t\t\t * We don't want the fallback to request a save,\n\t\t\t * nor to be undoable, hence we mark it non persistent.\n\t\t\t */\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\treplaceInnerBlocks( clientId, [ createBlock( 'core/page-list' ) ] );\n\t\t}\n\t}, [ clientId, isPlaceholder, ref ] );\n\n\tconst isEntityAvailable =\n\t\t! isNavigationMenuMissing && isNavigationMenuResolved;\n\n\t// \"loading\" state:\n\t// - there is a menu creation process in progress.\n\t// - there is a classic menu conversion process in progress.\n\t// OR:\n\t// - there is a ref attribute pointing to a Navigation Post\n\t// - the Navigation Post isn't available (hasn't resolved) yet.\n\tconst isLoading =\n\t\t! hasResolvedNavigationMenus ||\n\t\tisCreatingNavigationMenu ||\n\t\tisConvertingClassicMenu ||\n\t\t!! ( ref && ! isEntityAvailable && ! isConvertingClassicMenu );\n\n\tconst textDecoration = attributes.style?.typography?.textDecoration;\n\n\tconst hasBlockOverlay = useBlockOverlayActive( clientId );\n\tconst blockProps = useBlockProps( {\n\t\tref: navRef,\n\t\tclassName: classnames( className, {\n\t\t\t'items-justified-right': justifyContent === 'right',\n\t\t\t'items-justified-space-between': justifyContent === 'space-between',\n\t\t\t'items-justified-left': justifyContent === 'left',\n\t\t\t'items-justified-center': justifyContent === 'center',\n\t\t\t'is-vertical': orientation === 'vertical',\n\t\t\t'no-wrap': flexWrap === 'nowrap',\n\t\t\t'is-responsive': 'never' !== overlayMenu,\n\t\t\t'has-text-color': !! textColor.color || !! textColor?.class,\n\t\t\t[ getColorClassName( 'color', textColor?.slug ) ]:\n\t\t\t\t!! textColor?.slug,\n\t\t\t'has-background': !! backgroundColor.color || backgroundColor.class,\n\t\t\t[ getColorClassName( 'background-color', backgroundColor?.slug ) ]:\n\t\t\t\t!! backgroundColor?.slug,\n\t\t\t[ `has-text-decoration-${ textDecoration }` ]: textDecoration,\n\t\t\t'block-editor-block-content-overlay': hasBlockOverlay,\n\t\t} ),\n\t\tstyle: {\n\t\t\tcolor: ! textColor?.slug && textColor?.color,\n\t\t\tbackgroundColor: ! backgroundColor?.slug && backgroundColor?.color,\n\t\t},\n\t} );\n\n\t// Turn on contrast checker for web only since it's not supported on mobile yet.\n\tconst enableContrastChecking = Platform.OS === 'web';\n\n\tconst [ detectedBackgroundColor, setDetectedBackgroundColor ] = useState();\n\tconst [ detectedColor, setDetectedColor ] = useState();\n\tconst [\n\t\tdetectedOverlayBackgroundColor,\n\t\tsetDetectedOverlayBackgroundColor,\n\t] = useState();\n\tconst [ detectedOverlayColor, setDetectedOverlayColor ] = useState();\n\n\tconst handleUpdateMenu = (\n\t\tmenuId,\n\t\toptions = { focusNavigationBlock: false }\n\t) => {\n\t\tconst { focusNavigationBlock } = options;\n\t\tsetRef( menuId );\n\t\tif ( focusNavigationBlock ) {\n\t\t\tselectBlock( clientId );\n\t\t}\n\t};\n\n\tconst onSelectClassicMenu = async ( classicMenu ) => {\n\t\tconst navMenu = await convertClassicMenu(\n\t\t\tclassicMenu.id,\n\t\t\tclassicMenu.name,\n\t\t\t'draft'\n\t\t);\n\t\tif ( navMenu ) {\n\t\t\thandleUpdateMenu( navMenu.id, {\n\t\t\t\tfocusNavigationBlock: true,\n\t\t\t} );\n\t\t}\n\t};\n\n\tconst onSelectNavigationMenu = ( menuId ) => {\n\t\thandleUpdateMenu( menuId );\n\t};\n\n\tuseEffect( () => {\n\t\thideClassicMenuConversionNotice();\n\t\tif ( classicMenuConversionStatus === CLASSIC_MENU_CONVERSION_PENDING ) {\n\t\t\tspeak( __( 'Classic menu importing.' ) );\n\t\t}\n\n\t\tif ( classicMenuConversionStatus === CLASSIC_MENU_CONVERSION_SUCCESS ) {\n\t\t\tshowClassicMenuConversionNotice(\n\t\t\t\t__( 'Classic menu imported successfully.' )\n\t\t\t);\n\t\t}\n\n\t\tif ( classicMenuConversionStatus === CLASSIC_MENU_CONVERSION_ERROR ) {\n\t\t\tshowClassicMenuConversionNotice(\n\t\t\t\t__( 'Classic menu import failed.' )\n\t\t\t);\n\t\t}\n\t}, [ classicMenuConversionStatus, classicMenuConversionError ] );\n\n\t// Spacer block needs orientation from context. This is a patch until\n\t// https://github.com/WordPress/gutenberg/issues/36197 is addressed.\n\tuseEffect( () => {\n\t\tif ( orientation ) {\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\tsetAttributes( { orientation } );\n\t\t}\n\t}, [ orientation ] );\n\n\tuseEffect( () => {\n\t\tif ( ! enableContrastChecking ) {\n\t\t\treturn;\n\t\t}\n\t\tdetectColors(\n\t\t\tnavRef.current,\n\t\t\tsetDetectedColor,\n\t\t\tsetDetectedBackgroundColor\n\t\t);\n\t\tconst subMenuElement = navRef.current?.querySelector(\n\t\t\t'[data-type=\"core/navigation-link\"] [data-type=\"core/navigation-link\"]'\n\t\t);\n\t\tif ( subMenuElement ) {\n\t\t\tdetectColors(\n\t\t\t\tsubMenuElement,\n\t\t\t\tsetDetectedOverlayColor,\n\t\t\t\tsetDetectedOverlayBackgroundColor\n\t\t\t);\n\t\t}\n\t} );\n\n\tuseEffect( () => {\n\t\tif ( ! isSelected && ! isInnerBlockSelected ) {\n\t\t\thideNavigationMenuPermissionsNotice();\n\t\t}\n\n\t\tif ( isSelected || isInnerBlockSelected ) {\n\t\t\tif (\n\t\t\t\tref &&\n\t\t\t\t! navMenuResolvedButMissing &&\n\t\t\t\thasResolvedCanUserUpdateNavigationMenu &&\n\t\t\t\t! canUserUpdateNavigationMenu\n\t\t\t) {\n\t\t\t\tshowNavigationMenuPermissionsNotice(\n\t\t\t\t\t__(\n\t\t\t\t\t\t'You do not have permission to edit this Menu. Any changes made will not be saved.'\n\t\t\t\t\t)\n\t\t\t\t);\n\t\t\t}\n\n\t\t\tif (\n\t\t\t\t! ref &&\n\t\t\t\thasResolvedCanUserCreateNavigationMenu &&\n\t\t\t\t! canUserCreateNavigationMenu\n\t\t\t) {\n\t\t\t\tshowNavigationMenuPermissionsNotice(\n\t\t\t\t\t__(\n\t\t\t\t\t\t'You do not have permission to create Navigation Menus.'\n\t\t\t\t\t)\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\t}, [\n\t\tisSelected,\n\t\tisInnerBlockSelected,\n\t\tcanUserUpdateNavigationMenu,\n\t\thasResolvedCanUserUpdateNavigationMenu,\n\t\tcanUserCreateNavigationMenu,\n\t\thasResolvedCanUserCreateNavigationMenu,\n\t\tref,\n\t] );\n\n\tconst hasManagePermissions =\n\t\tcanUserCreateNavigationMenu || canUserUpdateNavigationMenu;\n\tconst isResponsive = 'never' !== overlayMenu;\n\n\tconst overlayMenuPreviewClasses = classnames(\n\t\t'wp-block-navigation__overlay-menu-preview',\n\t\t{ open: overlayMenuPreview }\n\t);\n\n\t// Prompt the user to publish the menu they have set as a draft\n\tconst isDraftNavigationMenu = navigationMenu?.status === 'draft';\n\tuseEffect( () => {\n\t\thideMenuAutoPublishDraftNotice();\n\t\tif ( ! isDraftNavigationMenu ) {\n\t\t\treturn;\n\t\t}\n\t\teditEntityRecord(\n\t\t\t'postType',\n\t\t\t'wp_navigation',\n\t\t\tnavigationMenu?.id,\n\t\t\t{ status: 'publish' },\n\t\t\t{ throwOnError: true }\n\t\t).catch( () => {\n\t\t\tshowMenuAutoPublishDraftNotice(\n\t\t\t\t__( 'Error occurred while publishing the navigation menu.' )\n\t\t\t);\n\t\t} );\n\t}, [ isDraftNavigationMenu, navigationMenu ] );\n\n\tconst colorGradientSettings = useMultipleOriginColorsAndGradients();\n\tconst stylingInspectorControls = (\n\t\t<>\n\t\t\t<InspectorControls>\n\t\t\t\t{ hasSubmenuIndicatorSetting && (\n\t\t\t\t\t<PanelBody title={ __( 'Display' ) }>\n\t\t\t\t\t\t{ isResponsive && (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\tclassName={ overlayMenuPreviewClasses }\n\t\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\t\tsetOverlayMenuPreview(\n\t\t\t\t\t\t\t\t\t\t\t! overlayMenuPreview\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\t\t{ hasIcon && (\n\t\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t\t<OverlayMenuIcon icon={ icon } />\n\t\t\t\t\t\t\t\t\t\t\t<Icon icon={ close } />\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{ ! hasIcon && (\n\t\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t\t<span>{ __( 'Menu' ) }</span>\n\t\t\t\t\t\t\t\t\t\t\t<span>{ __( 'Close' ) }</span>\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</Button>\n\t\t\t\t\t\t\t\t{ overlayMenuPreview && (\n\t\t\t\t\t\t\t\t\t<OverlayMenuPreview\n\t\t\t\t\t\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\t\t\t\t\t\thasIcon={ hasIcon }\n\t\t\t\t\t\t\t\t\t\ticon={ icon }\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) }\n\t\t\t\t\t\t<h3>{ __( 'Overlay Menu' ) }</h3>\n\t\t\t\t\t\t<ToggleGroupControl\n\t\t\t\t\t\t\tlabel={ __( 'Configure overlay menu' ) }\n\t\t\t\t\t\t\tvalue={ overlayMenu }\n\t\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t\t'Collapses the navigation options in a menu icon opening an overlay.'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\tsetAttributes( { overlayMenu: value } )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tisBlock\n\t\t\t\t\t\t\thideLabelFromVision\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\t\tvalue=\"never\"\n\t\t\t\t\t\t\t\tlabel={ __( 'Off' ) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\t\tvalue=\"mobile\"\n\t\t\t\t\t\t\t\tlabel={ __( 'Mobile' ) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\t\tvalue=\"always\"\n\t\t\t\t\t\t\t\tlabel={ __( 'Always' ) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</ToggleGroupControl>\n\t\t\t\t\t\t{ hasSubmenus && (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t<h3>{ __( 'Submenus' ) }</h3>\n\t\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t\tchecked={ openSubmenusOnClick }\n\t\t\t\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\t\topenSubmenusOnClick: value,\n\t\t\t\t\t\t\t\t\t\t\t...( value && {\n\t\t\t\t\t\t\t\t\t\t\t\tshowSubmenuIcon: true,\n\t\t\t\t\t\t\t\t\t\t\t} ), // Make sure arrows are shown when we toggle this on.\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\tlabel={ __( 'Open on click' ) }\n\t\t\t\t\t\t\t\t/>\n\n\t\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t\tchecked={ showSubmenuIcon }\n\t\t\t\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\t\tshowSubmenuIcon: value,\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\tdisabled={ attributes.openSubmenusOnClick }\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Show arrow' ) }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</PanelBody>\n\t\t\t\t) }\n\t\t\t</InspectorControls>\n\t\t\t<InspectorControls __experimentalGroup=\"color\">\n\t\t\t\t{ hasColorSettings && (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<ColorGradientSettingsDropdown\n\t\t\t\t\t\t\t__experimentalIsRenderedInSidebar\n\t\t\t\t\t\t\tsettings={ [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tcolorValue: textColor.color,\n\t\t\t\t\t\t\t\t\tlabel: __( 'Text' ),\n\t\t\t\t\t\t\t\t\tonColorChange: setTextColor,\n\t\t\t\t\t\t\t\t\tresetAllFilter: () => setTextColor(),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tcolorValue: backgroundColor.color,\n\t\t\t\t\t\t\t\t\tlabel: __( 'Background' ),\n\t\t\t\t\t\t\t\t\tonColorChange: setBackgroundColor,\n\t\t\t\t\t\t\t\t\tresetAllFilter: () => setBackgroundColor(),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tcolorValue: overlayTextColor.color,\n\t\t\t\t\t\t\t\t\tlabel: __( 'Submenu & overlay text' ),\n\t\t\t\t\t\t\t\t\tonColorChange: setOverlayTextColor,\n\t\t\t\t\t\t\t\t\tresetAllFilter: () => setOverlayTextColor(),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tcolorValue: overlayBackgroundColor.color,\n\t\t\t\t\t\t\t\t\tlabel: __( 'Submenu & overlay background' ),\n\t\t\t\t\t\t\t\t\tonColorChange: setOverlayBackgroundColor,\n\t\t\t\t\t\t\t\t\tresetAllFilter: () =>\n\t\t\t\t\t\t\t\t\t\tsetOverlayBackgroundColor(),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t] }\n\t\t\t\t\t\t\tpanelId={ clientId }\n\t\t\t\t\t\t\t{ ...colorGradientSettings }\n\t\t\t\t\t\t\tgradients={ [] }\n\t\t\t\t\t\t\tdisableCustomGradients={ true }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t{ enableContrastChecking && (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t<ContrastChecker\n\t\t\t\t\t\t\t\t\tbackgroundColor={ detectedBackgroundColor }\n\t\t\t\t\t\t\t\t\ttextColor={ detectedColor }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t<ContrastChecker\n\t\t\t\t\t\t\t\t\tbackgroundColor={\n\t\t\t\t\t\t\t\t\t\tdetectedOverlayBackgroundColor\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\ttextColor={ detectedOverlayColor }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</>\n\t\t\t\t) }\n\t\t\t</InspectorControls>\n\t\t</>\n\t);\n\n\t// If the block has inner blocks, but no menu id, then these blocks are either:\n\t// - inserted via a pattern.\n\t// - inserted directly via Code View (or otherwise).\n\t// - from an older version of navigation block added before the block used a wp_navigation entity.\n\t// Consider this state as 'unsaved' and offer an uncontrolled version of inner blocks,\n\t// that automatically saves the menu as an entity when changes are made to the inner blocks.\n\tconst hasUnsavedBlocks = hasUncontrolledInnerBlocks && ! isEntityAvailable;\n\n\tconst isManageMenusButtonDisabled =\n\t\t! hasManagePermissions || ! hasResolvedNavigationMenus;\n\n\tif ( hasUnsavedBlocks && ! isCreatingNavigationMenu ) {\n\t\treturn (\n\t\t\t<TagName { ...blockProps }>\n\t\t\t\t<MenuInspectorControls\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\tcreateNavigationMenuIsSuccess={\n\t\t\t\t\t\tcreateNavigationMenuIsSuccess\n\t\t\t\t\t}\n\t\t\t\t\tcreateNavigationMenuIsError={ createNavigationMenuIsError }\n\t\t\t\t\tcurrentMenuId={ ref }\n\t\t\t\t\tisNavigationMenuMissing={ isNavigationMenuMissing }\n\t\t\t\t\tisManageMenusButtonDisabled={ isManageMenusButtonDisabled }\n\t\t\t\t\tonCreateNew={ createUntitledEmptyNavigationMenu }\n\t\t\t\t\tonSelectClassicMenu={ onSelectClassicMenu }\n\t\t\t\t\tonSelectNavigationMenu={ onSelectNavigationMenu }\n\t\t\t\t/>\n\t\t\t\t{ stylingInspectorControls }\n\t\t\t\t<ResponsiveWrapper\n\t\t\t\t\tid={ clientId }\n\t\t\t\t\tonToggle={ setResponsiveMenuVisibility }\n\t\t\t\t\tisOpen={ isResponsiveMenuOpen }\n\t\t\t\t\thasIcon={ hasIcon }\n\t\t\t\t\ticon={ icon }\n\t\t\t\t\tisResponsive={ 'never' !== overlayMenu }\n\t\t\t\t\tisHiddenByDefault={ 'always' === overlayMenu }\n\t\t\t\t\toverlayBackgroundColor={ overlayBackgroundColor }\n\t\t\t\t\toverlayTextColor={ overlayTextColor }\n\t\t\t\t>\n\t\t\t\t\t<UnsavedInnerBlocks\n\t\t\t\t\t\tcreateNavigationMenu={ createNavigationMenu }\n\t\t\t\t\t\tblocks={ uncontrolledInnerBlocks }\n\t\t\t\t\t\ttemplateLock={ templateLock }\n\t\t\t\t\t\tnavigationMenus={ navigationMenus }\n\t\t\t\t\t\thasSelection={ isSelected || isInnerBlockSelected }\n\t\t\t\t\t/>\n\t\t\t\t</ResponsiveWrapper>\n\t\t\t</TagName>\n\t\t);\n\t}\n\n\t// Show a warning if the selected menu is no longer available.\n\t// TODO - the user should be able to select a new one?\n\tif ( ref && isNavigationMenuMissing ) {\n\t\treturn (\n\t\t\t<TagName { ...blockProps }>\n\t\t\t\t<MenuInspectorControls\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\tcreateNavigationMenuIsSuccess={\n\t\t\t\t\t\tcreateNavigationMenuIsSuccess\n\t\t\t\t\t}\n\t\t\t\t\tcreateNavigationMenuIsError={ createNavigationMenuIsError }\n\t\t\t\t\tisNavigationMenuMissing={ isNavigationMenuMissing }\n\t\t\t\t\tisManageMenusButtonDisabled={ isManageMenusButtonDisabled }\n\t\t\t\t\tonCreateNew={ createUntitledEmptyNavigationMenu }\n\t\t\t\t\tonSelectClassicMenu={ onSelectClassicMenu }\n\t\t\t\t\tonSelectNavigationMenu={ onSelectNavigationMenu }\n\t\t\t\t/>\n\t\t\t\t<Warning>\n\t\t\t\t\t{ __(\n\t\t\t\t\t\t'Navigation menu has been deleted or is unavailable. '\n\t\t\t\t\t) }\n\t\t\t\t\t<Button\n\t\t\t\t\t\tonClick={ createUntitledEmptyNavigationMenu }\n\t\t\t\t\t\tvariant=\"link\"\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Create a new menu?' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t</Warning>\n\t\t\t</TagName>\n\t\t);\n\t}\n\n\tif ( isEntityAvailable && hasAlreadyRendered ) {\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t<Warning>\n\t\t\t\t\t{ __( 'Block cannot be rendered inside itself.' ) }\n\t\t\t\t</Warning>\n\t\t\t</div>\n\t\t);\n\t}\n\n\tconst PlaceholderComponent = CustomPlaceholder\n\t\t? CustomPlaceholder\n\t\t: Placeholder;\n\n\t/**\n\t * Historically the navigation block has supported custom placeholders.\n\t * Even though the current UX tries as hard as possible not to\n\t * end up in a placeholder state, the block continues to support\n\t * this extensibility point, via a CustomPlaceholder.\n\t * When CustomPlaceholder is present it becomes the default fallback\n\t * for an empty navigation block, instead of the default fallbacks.\n\t *\n\t */\n\n\tif ( isPlaceholder && CustomPlaceholder ) {\n\t\treturn (\n\t\t\t<TagName { ...blockProps }>\n\t\t\t\t<PlaceholderComponent\n\t\t\t\t\tisSelected={ isSelected }\n\t\t\t\t\tcurrentMenuId={ ref }\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\tcanUserCreateNavigationMenu={ canUserCreateNavigationMenu }\n\t\t\t\t\tisResolvingCanUserCreateNavigationMenu={\n\t\t\t\t\t\tisResolvingCanUserCreateNavigationMenu\n\t\t\t\t\t}\n\t\t\t\t\tonSelectNavigationMenu={ onSelectNavigationMenu }\n\t\t\t\t\tonSelectClassicMenu={ onSelectClassicMenu }\n\t\t\t\t\tonCreateEmpty={ createUntitledEmptyNavigationMenu }\n\t\t\t\t/>\n\t\t\t</TagName>\n\t\t);\n\t}\n\n\treturn (\n\t\t<EntityProvider kind=\"postType\" type=\"wp_navigation\" id={ ref }>\n\t\t\t<RecursionProvider uniqueId={ recursionId }>\n\t\t\t\t<MenuInspectorControls\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\tcreateNavigationMenuIsSuccess={\n\t\t\t\t\t\tcreateNavigationMenuIsSuccess\n\t\t\t\t\t}\n\t\t\t\t\tcreateNavigationMenuIsError={ createNavigationMenuIsError }\n\t\t\t\t\tcurrentMenuId={ ref }\n\t\t\t\t\tisNavigationMenuMissing={ isNavigationMenuMissing }\n\t\t\t\t\tisManageMenusButtonDisabled={ isManageMenusButtonDisabled }\n\t\t\t\t\tonCreateNew={ createUntitledEmptyNavigationMenu }\n\t\t\t\t\tonSelectClassicMenu={ onSelectClassicMenu }\n\t\t\t\t\tonSelectNavigationMenu={ onSelectNavigationMenu }\n\t\t\t\t/>\n\t\t\t\t{ stylingInspectorControls }\n\t\t\t\t{ isEntityAvailable && (\n\t\t\t\t\t<InspectorControls __experimentalGroup=\"advanced\">\n\t\t\t\t\t\t{ hasResolvedCanUserUpdateNavigationMenu &&\n\t\t\t\t\t\t\tcanUserUpdateNavigationMenu && (\n\t\t\t\t\t\t\t\t<NavigationMenuNameControl />\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ hasResolvedCanUserDeleteNavigationMenu &&\n\t\t\t\t\t\t\tcanUserDeleteNavigationMenu && (\n\t\t\t\t\t\t\t\t<NavigationMenuDeleteControl\n\t\t\t\t\t\t\t\t\tonDelete={ ( deletedMenuTitle = '' ) => {\n\t\t\t\t\t\t\t\t\t\treplaceInnerBlocks( clientId, [] );\n\t\t\t\t\t\t\t\t\t\tshowNavigationMenuStatusNotice(\n\t\t\t\t\t\t\t\t\t\t\tsprintf(\n\t\t\t\t\t\t\t\t\t\t\t\t// translators: %s: the name of a menu (e.g. Header navigation).\n\t\t\t\t\t\t\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t\t\t\t\t\t\t'Navigation menu %s successfully deleted.'\n\t\t\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t\t\t\tdeletedMenuTitle\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/>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ isOffCanvasNavigationEditorEnabled && (\n\t\t\t\t\t\t\t<ManageMenusButton\n\t\t\t\t\t\t\t\tdisabled={ isManageMenusButtonDisabled }\n\t\t\t\t\t\t\t\tclassName=\"wp-block-navigation-manage-menus-button\"\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</InspectorControls>\n\t\t\t\t) }\n\n\t\t\t\t{ isLoading && (\n\t\t\t\t\t<TagName { ...blockProps }>\n\t\t\t\t\t\t<Spinner className=\"wp-block-navigation__loading-indicator\" />\n\t\t\t\t\t</TagName>\n\t\t\t\t) }\n\n\t\t\t\t{ ! isLoading && (\n\t\t\t\t\t<TagName { ...blockProps }>\n\t\t\t\t\t\t<ResponsiveWrapper\n\t\t\t\t\t\t\tid={ clientId }\n\t\t\t\t\t\t\tonToggle={ setResponsiveMenuVisibility }\n\t\t\t\t\t\t\tlabel={ __( 'Menu' ) }\n\t\t\t\t\t\t\thasIcon={ hasIcon }\n\t\t\t\t\t\t\ticon={ icon }\n\t\t\t\t\t\t\tisOpen={ isResponsiveMenuOpen }\n\t\t\t\t\t\t\tisResponsive={ isResponsive }\n\t\t\t\t\t\t\tisHiddenByDefault={ 'always' === overlayMenu }\n\t\t\t\t\t\t\toverlayBackgroundColor={ overlayBackgroundColor }\n\t\t\t\t\t\t\toverlayTextColor={ overlayTextColor }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ isEntityAvailable && (\n\t\t\t\t\t\t\t\t<NavigationInnerBlocks\n\t\t\t\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\t\t\t\thasCustomPlaceholder={\n\t\t\t\t\t\t\t\t\t\t!! CustomPlaceholder\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\ttemplateLock={ templateLock }\n\t\t\t\t\t\t\t\t\torientation={ orientation }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</ResponsiveWrapper>\n\t\t\t\t\t</TagName>\n\t\t\t\t) }\n\t\t\t</RecursionProvider>\n\t\t</EntityProvider>\n\t);\n}\n\nexport default withColors(\n\t{ textColor: 'color' },\n\t{ backgroundColor: 'color' },\n\t{ overlayBackgroundColor: 'color' },\n\t{ overlayTextColor: 'color' }\n)( Navigation );\n"]}
|
|
@@ -13,6 +13,8 @@ var _blockEditor = require("@wordpress/block-editor");
|
|
|
13
13
|
|
|
14
14
|
var _components = require("@wordpress/components");
|
|
15
15
|
|
|
16
|
+
var _data = require("@wordpress/data");
|
|
17
|
+
|
|
16
18
|
var _i18n = require("@wordpress/i18n");
|
|
17
19
|
|
|
18
20
|
var _manageMenusButton = _interopRequireDefault(require("./manage-menus-button"));
|
|
@@ -30,10 +32,11 @@ const MenuInspectorControls = _ref => {
|
|
|
30
32
|
var _window, _window2;
|
|
31
33
|
|
|
32
34
|
let {
|
|
35
|
+
clientId,
|
|
33
36
|
createNavigationMenuIsSuccess,
|
|
34
37
|
createNavigationMenuIsError,
|
|
35
38
|
currentMenuId = null,
|
|
36
|
-
|
|
39
|
+
isNavigationMenuMissing,
|
|
37
40
|
isManageMenusButtonDisabled,
|
|
38
41
|
onCreateNew,
|
|
39
42
|
onSelectClassicMenu,
|
|
@@ -43,13 +46,24 @@ const MenuInspectorControls = _ref => {
|
|
|
43
46
|
const menuControlsSlot = (_window2 = window) !== null && _window2 !== void 0 && _window2.__experimentalEnableBlockInspectorTabs ? 'list' : undefined;
|
|
44
47
|
/* translators: %s: The name of a menu. */
|
|
45
48
|
|
|
46
|
-
const actionLabel = (0, _i18n.__)("Switch to '%s'");
|
|
49
|
+
const actionLabel = (0, _i18n.__)("Switch to '%s'"); // Provide a hierarchy of clientIds for the given Navigation block (clientId).
|
|
50
|
+
// This is required else the list view will display the entire block tree.
|
|
51
|
+
|
|
52
|
+
const clientIdsTree = (0, _data.useSelect)(select => {
|
|
53
|
+
const {
|
|
54
|
+
__unstableGetClientIdsTree
|
|
55
|
+
} = select(_blockEditor.store);
|
|
56
|
+
return __unstableGetClientIdsTree(clientId);
|
|
57
|
+
}, [clientId]);
|
|
47
58
|
return (0, _element.createElement)(_blockEditor.InspectorControls, {
|
|
48
59
|
__experimentalGroup: menuControlsSlot
|
|
49
60
|
}, (0, _element.createElement)(_components.PanelBody, {
|
|
50
61
|
title: isOffCanvasNavigationEditorEnabled ? null : (0, _i18n.__)('Menu')
|
|
51
|
-
}, (0, _element.createElement)(_element.Fragment, null,
|
|
52
|
-
|
|
62
|
+
}, isOffCanvasNavigationEditorEnabled ? (0, _element.createElement)(_element.Fragment, null, (0, _element.createElement)(_components.__experimentalHStack, {
|
|
63
|
+
className: "wp-block-navigation-off-canvas-editor__header"
|
|
64
|
+
}, (0, _element.createElement)(_components.__experimentalHeading, {
|
|
65
|
+
className: "wp-block-navigation-off-canvas-editor__title",
|
|
66
|
+
level: 2
|
|
53
67
|
}, (0, _i18n.__)('Menu')), (0, _element.createElement)(_navigationMenuSelector.default, {
|
|
54
68
|
currentMenuId: currentMenuId,
|
|
55
69
|
onSelectClassicMenu: onSelectClassicMenu,
|
|
@@ -58,11 +72,19 @@ const MenuInspectorControls = _ref => {
|
|
|
58
72
|
createNavigationMenuIsSuccess: createNavigationMenuIsSuccess,
|
|
59
73
|
createNavigationMenuIsError: createNavigationMenuIsError,
|
|
60
74
|
actionLabel: actionLabel
|
|
61
|
-
}),
|
|
62
|
-
blocks:
|
|
75
|
+
})), currentMenuId && isNavigationMenuMissing ? (0, _element.createElement)("p", null, (0, _i18n.__)('Select or create a menu')) : (0, _element.createElement)(_blockEditor.__experimentalOffCanvasEditor, {
|
|
76
|
+
blocks: clientIdsTree,
|
|
63
77
|
isExpanded: true,
|
|
64
78
|
selectBlockInCanvas: false
|
|
65
|
-
}) : (0, _element.createElement)(
|
|
79
|
+
})) : (0, _element.createElement)(_element.Fragment, null, (0, _element.createElement)(_navigationMenuSelector.default, {
|
|
80
|
+
currentMenuId: currentMenuId,
|
|
81
|
+
onSelectClassicMenu: onSelectClassicMenu,
|
|
82
|
+
onSelectNavigationMenu: onSelectNavigationMenu,
|
|
83
|
+
onCreateNew: onCreateNew,
|
|
84
|
+
createNavigationMenuIsSuccess: createNavigationMenuIsSuccess,
|
|
85
|
+
createNavigationMenuIsError: createNavigationMenuIsError,
|
|
86
|
+
actionLabel: actionLabel
|
|
87
|
+
}), (0, _element.createElement)(_manageMenusButton.default, {
|
|
66
88
|
disabled: isManageMenusButtonDisabled
|
|
67
89
|
}))));
|
|
68
90
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/block-library/src/navigation/edit/menu-inspector-controls.js"],"names":["MenuInspectorControls","createNavigationMenuIsSuccess","createNavigationMenuIsError","currentMenuId","
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/navigation/edit/menu-inspector-controls.js"],"names":["MenuInspectorControls","clientId","createNavigationMenuIsSuccess","createNavigationMenuIsError","currentMenuId","isNavigationMenuMissing","isManageMenusButtonDisabled","onCreateNew","onSelectClassicMenu","onSelectNavigationMenu","isOffCanvasNavigationEditorEnabled","window","__experimentalEnableOffCanvasNavigationEditor","menuControlsSlot","__experimentalEnableBlockInspectorTabs","undefined","actionLabel","clientIdsTree","select","__unstableGetClientIdsTree","blockEditorStore"],"mappings":";;;;;;;;;;;AAGA;;AAKA;;AAKA;;AACA;;AAKA;;AACA;;AApBA;AACA;AACA;;AAcA;AACA;AACA;AAIA,MAAMA,qBAAqB,GAAG,QAUvB;AAAA;;AAAA,MAVyB;AAC/BC,IAAAA,QAD+B;AAE/BC,IAAAA,6BAF+B;AAG/BC,IAAAA,2BAH+B;AAI/BC,IAAAA,aAAa,GAAG,IAJe;AAK/BC,IAAAA,uBAL+B;AAM/BC,IAAAA,2BAN+B;AAO/BC,IAAAA,WAP+B;AAQ/BC,IAAAA,mBAR+B;AAS/BC,IAAAA;AAT+B,GAUzB;AACN,QAAMC,kCAAkC,GACvC,YAAAC,MAAM,UAAN,0CAAQC,6CAAR,MAA0D,IAD3D;AAEA,QAAMC,gBAAgB,GAAG,YAAAF,MAAM,UAAN,oCAAQG,sCAAR,GACtB,MADsB,GAEtBC,SAFH;AAGA;;AACA,QAAMC,WAAW,GAAG,cAAI,gBAAJ,CAApB,CAPM,CASN;AACA;;AACA,QAAMC,aAAa,GAAG,qBACnBC,MAAF,IAAc;AACb,UAAM;AAAEC,MAAAA;AAAF,QAAiCD,MAAM,CAAEE,kBAAF,CAA7C;AACA,WAAOD,0BAA0B,CAAElB,QAAF,CAAjC;AACA,GAJoB,EAKrB,CAAEA,QAAF,CALqB,CAAtB;AAQA,SACC,4BAAC,8BAAD;AAAmB,IAAA,mBAAmB,EAAGY;AAAzC,KACC,4BAAC,qBAAD;AACC,IAAA,KAAK,EACJH,kCAAkC,GAAG,IAAH,GAAU,cAAI,MAAJ;AAF9C,KAKGA,kCAAkC,GACnC,qDACC,4BAAC,gCAAD;AAAQ,IAAA,SAAS,EAAC;AAAlB,KACC,4BAAC,iCAAD;AACC,IAAA,SAAS,EAAC,8CADX;AAEC,IAAA,KAAK,EAAG;AAFT,KAIG,cAAI,MAAJ,CAJH,CADD,EAOC,4BAAC,+BAAD;AACC,IAAA,aAAa,EAAGN,aADjB;AAEC,IAAA,mBAAmB,EAAGI,mBAFvB;AAGC,IAAA,sBAAsB,EACrBC,sBAJF;AAMC,IAAA,WAAW,EAAGF,WANf;AAOC,IAAA,6BAA6B,EAC5BL,6BARF;AAUC,IAAA,2BAA2B,EAC1BC,2BAXF;AAaC,IAAA,WAAW,EAAGa;AAbf,IAPD,CADD,EAwBGZ,aAAa,IAAIC,uBAAjB,GACD,uCAAK,cAAI,yBAAJ,CAAL,CADC,GAGD,4BAAC,0CAAD;AACC,IAAA,MAAM,EAAGY,aADV;AAEC,IAAA,UAAU,EAAG,IAFd;AAGC,IAAA,mBAAmB,EAAG;AAHvB,IA3BF,CADmC,GAoCnC,qDACC,4BAAC,+BAAD;AACC,IAAA,aAAa,EAAGb,aADjB;AAEC,IAAA,mBAAmB,EAAGI,mBAFvB;AAGC,IAAA,sBAAsB,EAAGC,sBAH1B;AAIC,IAAA,WAAW,EAAGF,WAJf;AAKC,IAAA,6BAA6B,EAC5BL,6BANF;AAQC,IAAA,2BAA2B,EAC1BC,2BATF;AAWC,IAAA,WAAW,EAAGa;AAXf,IADD,EAcC,4BAAC,0BAAD;AACC,IAAA,QAAQ,EAAGV;AADZ,IAdD,CAzCF,CADD,CADD;AAiEA,CA9FD;;eAgGeN,qB","sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalOffCanvasEditor as OffCanvasEditor,\n\tInspectorControls,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport {\n\tPanelBody,\n\t__experimentalHStack as HStack,\n\t__experimentalHeading as Heading,\n} from '@wordpress/components';\nimport { useSelect } from '@wordpress/data';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport ManageMenusButton from './manage-menus-button';\nimport NavigationMenuSelector from './navigation-menu-selector';\n\nconst MenuInspectorControls = ( {\n\tclientId,\n\tcreateNavigationMenuIsSuccess,\n\tcreateNavigationMenuIsError,\n\tcurrentMenuId = null,\n\tisNavigationMenuMissing,\n\tisManageMenusButtonDisabled,\n\tonCreateNew,\n\tonSelectClassicMenu,\n\tonSelectNavigationMenu,\n} ) => {\n\tconst isOffCanvasNavigationEditorEnabled =\n\t\twindow?.__experimentalEnableOffCanvasNavigationEditor === true;\n\tconst menuControlsSlot = window?.__experimentalEnableBlockInspectorTabs\n\t\t? 'list'\n\t\t: undefined;\n\t/* translators: %s: The name of a menu. */\n\tconst actionLabel = __( \"Switch to '%s'\" );\n\n\t// Provide a hierarchy of clientIds for the given Navigation block (clientId).\n\t// This is required else the list view will display the entire block tree.\n\tconst clientIdsTree = useSelect(\n\t\t( select ) => {\n\t\t\tconst { __unstableGetClientIdsTree } = select( blockEditorStore );\n\t\t\treturn __unstableGetClientIdsTree( clientId );\n\t\t},\n\t\t[ clientId ]\n\t);\n\n\treturn (\n\t\t<InspectorControls __experimentalGroup={ menuControlsSlot }>\n\t\t\t<PanelBody\n\t\t\t\ttitle={\n\t\t\t\t\tisOffCanvasNavigationEditorEnabled ? null : __( 'Menu' )\n\t\t\t\t}\n\t\t\t>\n\t\t\t\t{ isOffCanvasNavigationEditorEnabled ? (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<HStack className=\"wp-block-navigation-off-canvas-editor__header\">\n\t\t\t\t\t\t\t<Heading\n\t\t\t\t\t\t\t\tclassName=\"wp-block-navigation-off-canvas-editor__title\"\n\t\t\t\t\t\t\t\tlevel={ 2 }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ __( 'Menu' ) }\n\t\t\t\t\t\t\t</Heading>\n\t\t\t\t\t\t\t<NavigationMenuSelector\n\t\t\t\t\t\t\t\tcurrentMenuId={ currentMenuId }\n\t\t\t\t\t\t\t\tonSelectClassicMenu={ onSelectClassicMenu }\n\t\t\t\t\t\t\t\tonSelectNavigationMenu={\n\t\t\t\t\t\t\t\t\tonSelectNavigationMenu\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tonCreateNew={ onCreateNew }\n\t\t\t\t\t\t\t\tcreateNavigationMenuIsSuccess={\n\t\t\t\t\t\t\t\t\tcreateNavigationMenuIsSuccess\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tcreateNavigationMenuIsError={\n\t\t\t\t\t\t\t\t\tcreateNavigationMenuIsError\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tactionLabel={ actionLabel }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</HStack>\n\t\t\t\t\t\t{ currentMenuId && isNavigationMenuMissing ? (\n\t\t\t\t\t\t\t<p>{ __( 'Select or create a menu' ) }</p>\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t<OffCanvasEditor\n\t\t\t\t\t\t\t\tblocks={ clientIdsTree }\n\t\t\t\t\t\t\t\tisExpanded={ true }\n\t\t\t\t\t\t\t\tselectBlockInCanvas={ false }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</>\n\t\t\t\t) : (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<NavigationMenuSelector\n\t\t\t\t\t\t\tcurrentMenuId={ currentMenuId }\n\t\t\t\t\t\t\tonSelectClassicMenu={ onSelectClassicMenu }\n\t\t\t\t\t\t\tonSelectNavigationMenu={ onSelectNavigationMenu }\n\t\t\t\t\t\t\tonCreateNew={ onCreateNew }\n\t\t\t\t\t\t\tcreateNavigationMenuIsSuccess={\n\t\t\t\t\t\t\t\tcreateNavigationMenuIsSuccess\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tcreateNavigationMenuIsError={\n\t\t\t\t\t\t\t\tcreateNavigationMenuIsError\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tactionLabel={ actionLabel }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<ManageMenusButton\n\t\t\t\t\t\t\tdisabled={ isManageMenusButtonDisabled }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</>\n\t\t\t\t) }\n\t\t\t</PanelBody>\n\t\t</InspectorControls>\n\t);\n};\n\nexport default MenuInspectorControls;\n"]}
|
|
@@ -31,6 +31,8 @@ var _useNavigationEntities = _interopRequireDefault(require("../use-navigation-e
|
|
|
31
31
|
* Internal dependencies
|
|
32
32
|
*/
|
|
33
33
|
function NavigationMenuSelector(_ref) {
|
|
34
|
+
var _window;
|
|
35
|
+
|
|
34
36
|
let {
|
|
35
37
|
currentMenuId,
|
|
36
38
|
onSelectNavigationMenu,
|
|
@@ -41,8 +43,9 @@ function NavigationMenuSelector(_ref) {
|
|
|
41
43
|
createNavigationMenuIsError,
|
|
42
44
|
toggleProps = {}
|
|
43
45
|
} = _ref;
|
|
44
|
-
|
|
46
|
+
const isOffCanvasNavigationEditorEnabled = ((_window = window) === null || _window === void 0 ? void 0 : _window.__experimentalEnableOffCanvasNavigationEditor) === true;
|
|
45
47
|
/* translators: %s: The name of a menu. */
|
|
48
|
+
|
|
46
49
|
const createActionLabel = (0, _i18n.__)("Create from '%s'");
|
|
47
50
|
const [selectorLabel, setSelectorLabel] = (0, _element.useState)('');
|
|
48
51
|
const [isPressed, setIsPressed] = (0, _element.useState)(false);
|
|
@@ -116,7 +119,7 @@ function NavigationMenuSelector(_ref) {
|
|
|
116
119
|
}
|
|
117
120
|
};
|
|
118
121
|
|
|
119
|
-
if (!hasNavigationMenus && !hasClassicMenus) {
|
|
122
|
+
if (!hasNavigationMenus && !hasClassicMenus && !isOffCanvasNavigationEditorEnabled) {
|
|
120
123
|
return (0, _element.createElement)(_components.Button, {
|
|
121
124
|
className: "wp-block-navigation__navigation-selector-button--createnew",
|
|
122
125
|
isBusy: !enableOptions,
|
|
@@ -132,13 +135,13 @@ function NavigationMenuSelector(_ref) {
|
|
|
132
135
|
}
|
|
133
136
|
|
|
134
137
|
return (0, _element.createElement)(_components.DropdownMenu, {
|
|
135
|
-
className:
|
|
138
|
+
className: isOffCanvasNavigationEditorEnabled ? '' : 'wp-block-navigation__navigation-selector',
|
|
136
139
|
label: selectorLabel,
|
|
137
|
-
text:
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
140
|
+
text: isOffCanvasNavigationEditorEnabled ? '' : selectorLabel,
|
|
141
|
+
icon: isOffCanvasNavigationEditorEnabled ? _icons.moreVertical : null,
|
|
142
|
+
toggleProps: isOffCanvasNavigationEditorEnabled ? {
|
|
143
|
+
isSmall: true
|
|
144
|
+
} : toggleProps
|
|
142
145
|
}, _ref3 => {
|
|
143
146
|
let {
|
|
144
147
|
onClose
|