@wordpress/block-library 6.0.17-next.33ec3857e2.0 → 6.0.20
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 +0 -4
- package/build/archives/index.js +0 -1
- package/build/archives/index.js.map +1 -1
- package/build/audio/index.js +0 -1
- package/build/audio/index.js.map +1 -1
- package/build/block/index.js +0 -1
- package/build/block/index.js.map +1 -1
- package/build/button/edit.native.js +1 -1
- package/build/button/edit.native.js.map +1 -1
- package/build/button/index.js +1 -5
- package/build/button/index.js.map +1 -1
- package/build/buttons/index.js +0 -1
- package/build/buttons/index.js.map +1 -1
- package/build/buttons/transforms.js +0 -1
- package/build/buttons/transforms.js.map +1 -1
- package/build/calendar/index.js +0 -1
- package/build/calendar/index.js.map +1 -1
- package/build/categories/index.js +0 -1
- package/build/categories/index.js.map +1 -1
- package/build/code/index.js +1 -6
- package/build/code/index.js.map +1 -1
- package/build/column/index.js +0 -1
- package/build/column/index.js.map +1 -1
- package/build/columns/index.js +1 -3
- package/build/columns/index.js.map +1 -1
- package/build/comment-author-avatar/edit.js +1 -2
- package/build/comment-author-avatar/edit.js.map +1 -1
- package/build/comment-author-avatar/index.js +2 -7
- package/build/comment-author-avatar/index.js.map +1 -1
- package/build/comment-author-name/index.js +0 -1
- package/build/comment-author-name/index.js.map +1 -1
- package/build/comment-content/index.js +0 -1
- package/build/comment-content/index.js.map +1 -1
- package/build/comment-date/index.js +0 -1
- package/build/comment-date/index.js.map +1 -1
- package/build/comment-edit-link/index.js +1 -2
- package/build/comment-edit-link/index.js.map +1 -1
- package/build/comment-reply-link/index.js +0 -1
- package/build/comment-reply-link/index.js.map +1 -1
- package/build/comment-template/edit.js +23 -98
- package/build/comment-template/edit.js.map +1 -1
- package/build/comment-template/index.js +2 -4
- package/build/comment-template/index.js.map +1 -1
- package/build/comments-query-loop/edit.js +2 -2
- package/build/comments-query-loop/edit.js.map +1 -1
- package/build/comments-query-loop/index.js +7 -4
- package/build/comments-query-loop/index.js.map +1 -1
- package/build/comments-query-loop/toolbar.js +3 -3
- package/build/comments-query-loop/toolbar.js.map +1 -1
- package/build/cover/edit.js +1 -2
- package/build/cover/edit.js.map +1 -1
- package/build/cover/index.js +0 -1
- package/build/cover/index.js.map +1 -1
- package/build/embed/deprecated.js +0 -1
- package/build/embed/deprecated.js.map +1 -1
- package/build/embed/edit.native.js +20 -23
- package/build/embed/edit.native.js.map +1 -1
- package/build/embed/embed-bottom-sheet.native.js +85 -0
- package/build/embed/embed-bottom-sheet.native.js.map +1 -0
- package/build/embed/embed-placeholder.native.js +2 -9
- package/build/embed/embed-placeholder.native.js.map +1 -1
- package/build/embed/index.js +0 -1
- package/build/embed/index.js.map +1 -1
- package/build/embed/transforms.js +0 -1
- package/build/embed/transforms.js.map +1 -1
- package/build/embed/util.js +0 -1
- package/build/embed/util.js.map +1 -1
- package/build/file/index.js +0 -1
- package/build/file/index.js.map +1 -1
- package/build/freeform/index.js +0 -1
- package/build/freeform/index.js.map +1 -1
- package/build/gallery/deprecated.js +1 -5
- package/build/gallery/deprecated.js.map +1 -1
- package/build/gallery/edit.js +1 -12
- package/build/gallery/edit.js.map +1 -1
- package/build/gallery/index.js +0 -1
- package/build/gallery/index.js.map +1 -1
- package/build/group/edit.native.js +1 -1
- package/build/group/edit.native.js.map +1 -1
- package/build/group/index.js +4 -9
- package/build/group/index.js.map +1 -1
- package/build/heading/index.js +0 -1
- package/build/heading/index.js.map +1 -1
- package/build/heading/transforms.js +0 -1
- package/build/heading/transforms.js.map +1 -1
- package/build/home-link/index.js +0 -1
- package/build/home-link/index.js.map +1 -1
- package/build/html/index.js +0 -1
- package/build/html/index.js.map +1 -1
- package/build/image/edit.js +5 -56
- package/build/image/edit.js.map +1 -1
- package/build/image/edit.native.js +1 -1
- package/build/image/edit.native.js.map +1 -1
- package/build/image/image.js +4 -15
- package/build/image/image.js.map +1 -1
- package/build/image/index.js +1 -5
- package/build/image/index.js.map +1 -1
- package/build/index.js +1 -5
- package/build/index.js.map +1 -1
- package/build/latest-comments/index.js +0 -1
- package/build/latest-comments/index.js.map +1 -1
- package/build/latest-posts/deprecated.js +0 -1
- package/build/latest-posts/deprecated.js.map +1 -1
- package/build/latest-posts/index.js +0 -1
- package/build/latest-posts/index.js.map +1 -1
- package/build/list/index.js +0 -1
- package/build/list/index.js.map +1 -1
- package/build/loginout/index.js +0 -1
- package/build/loginout/index.js.map +1 -1
- package/build/media-text/index.js +0 -1
- package/build/media-text/index.js.map +1 -1
- package/build/missing/index.js +0 -1
- package/build/missing/index.js.map +1 -1
- package/build/more/index.js +0 -1
- package/build/more/index.js.map +1 -1
- package/build/navigation/deprecated.js +1 -3
- package/build/navigation/deprecated.js.map +1 -1
- package/build/navigation/edit/index.js +106 -59
- package/build/navigation/edit/index.js.map +1 -1
- package/build/navigation/edit/navigation-menu-selector.js +3 -2
- package/build/navigation/edit/navigation-menu-selector.js.map +1 -1
- package/build/navigation/edit/placeholder/index.js +15 -7
- package/build/navigation/edit/placeholder/index.js.map +1 -1
- package/build/navigation/edit/responsive-wrapper.js +9 -7
- package/build/navigation/edit/responsive-wrapper.js.map +1 -1
- package/build/navigation/edit/unsaved-inner-blocks.js +3 -11
- package/build/navigation/edit/unsaved-inner-blocks.js.map +1 -1
- package/build/navigation/edit/use-navigation-notice.js +54 -0
- package/build/navigation/edit/use-navigation-notice.js.map +1 -0
- package/build/navigation/index.js +2 -9
- package/build/navigation/index.js.map +1 -1
- package/build/navigation/menu-items-to-blocks.js +1 -4
- package/build/navigation/menu-items-to-blocks.js.map +1 -1
- package/build/navigation/use-navigation-menu.js +9 -2
- package/build/navigation/use-navigation-menu.js.map +1 -1
- package/build/navigation/view.js +12 -7
- package/build/navigation/view.js.map +1 -1
- package/build/navigation-area/edit.js +1 -2
- package/build/navigation-area/edit.js.map +1 -1
- package/build/navigation-area/index.js +1 -2
- package/build/navigation-area/index.js.map +1 -1
- package/build/navigation-link/edit.js +0 -7
- package/build/navigation-link/edit.js.map +1 -1
- package/build/navigation-link/index.js +0 -1
- package/build/navigation-link/index.js.map +1 -1
- package/build/navigation-submenu/edit.js +0 -1
- package/build/navigation-submenu/edit.js.map +1 -1
- package/build/navigation-submenu/index.js +0 -1
- package/build/navigation-submenu/index.js.map +1 -1
- package/build/nextpage/index.js +0 -1
- package/build/nextpage/index.js.map +1 -1
- package/build/page-list/index.js +1 -6
- package/build/page-list/index.js.map +1 -1
- package/build/paragraph/edit.js +2 -12
- package/build/paragraph/edit.js.map +1 -1
- package/build/paragraph/index.js +0 -1
- package/build/paragraph/index.js.map +1 -1
- package/build/paragraph/transforms.js +0 -1
- package/build/paragraph/transforms.js.map +1 -1
- package/build/pattern/index.js +0 -1
- package/build/pattern/index.js.map +1 -1
- package/build/post-author/edit.js +1 -1
- package/build/post-author/edit.js.map +1 -1
- package/build/post-author/index.js +0 -1
- package/build/post-author/index.js.map +1 -1
- package/build/post-comment/index.js +0 -1
- package/build/post-comment/index.js.map +1 -1
- package/build/post-comments/index.js +0 -1
- package/build/post-comments/index.js.map +1 -1
- package/build/post-comments-count/index.js +0 -1
- package/build/post-comments-count/index.js.map +1 -1
- package/build/post-comments-form/index.js +0 -1
- package/build/post-comments-form/index.js.map +1 -1
- package/build/post-comments-link/index.js +0 -1
- package/build/post-comments-link/index.js.map +1 -1
- package/build/post-content/edit.js +1 -1
- package/build/post-content/edit.js.map +1 -1
- package/build/post-content/index.js +0 -1
- package/build/post-content/index.js.map +1 -1
- package/build/post-date/edit.js +1 -1
- package/build/post-date/edit.js.map +1 -1
- package/build/post-date/index.js +0 -1
- package/build/post-date/index.js.map +1 -1
- package/build/post-excerpt/edit.js +1 -1
- package/build/post-excerpt/edit.js.map +1 -1
- package/build/post-excerpt/index.js +0 -1
- package/build/post-excerpt/index.js.map +1 -1
- package/build/post-featured-image/dimension-controls.js +30 -50
- package/build/post-featured-image/dimension-controls.js.map +1 -1
- package/build/post-featured-image/edit.js +4 -8
- package/build/post-featured-image/edit.js.map +1 -1
- package/build/post-featured-image/index.js +0 -1
- package/build/post-featured-image/index.js.map +1 -1
- package/build/post-navigation-link/index.js +0 -1
- package/build/post-navigation-link/index.js.map +1 -1
- package/build/post-template/index.js +0 -1
- package/build/post-template/index.js.map +1 -1
- package/build/post-terms/index.js +0 -1
- package/build/post-terms/index.js.map +1 -1
- package/build/post-title/edit.js +1 -1
- package/build/post-title/edit.js.map +1 -1
- package/build/post-title/index.js +0 -1
- package/build/post-title/index.js.map +1 -1
- package/build/preformatted/edit.native.js +1 -2
- package/build/preformatted/edit.native.js.map +1 -1
- package/build/preformatted/index.js +0 -1
- package/build/preformatted/index.js.map +1 -1
- package/build/pullquote/index.js +1 -8
- package/build/pullquote/index.js.map +1 -1
- package/build/query/index.js +0 -1
- package/build/query/index.js.map +1 -1
- package/build/query-pagination/index.js +0 -1
- package/build/query-pagination/index.js.map +1 -1
- package/build/query-pagination-next/index.js +0 -1
- package/build/query-pagination-next/index.js.map +1 -1
- package/build/query-pagination-numbers/index.js +0 -1
- package/build/query-pagination-numbers/index.js.map +1 -1
- package/build/query-pagination-previous/index.js +0 -1
- package/build/query-pagination-previous/index.js.map +1 -1
- package/build/query-title/index.js +0 -1
- package/build/query-title/index.js.map +1 -1
- package/build/quote/index.js +0 -1
- package/build/quote/index.js.map +1 -1
- package/build/rss/index.js +0 -1
- package/build/rss/index.js.map +1 -1
- package/build/search/edit.js +3 -5
- package/build/search/edit.js.map +1 -1
- package/build/search/index.js +1 -8
- package/build/search/index.js.map +1 -1
- package/build/separator/index.js +0 -1
- package/build/separator/index.js.map +1 -1
- package/build/shortcode/index.js +0 -1
- package/build/shortcode/index.js.map +1 -1
- package/build/site-logo/edit.js +119 -18
- package/build/site-logo/edit.js.map +1 -1
- package/build/site-logo/index.js +5 -5
- package/build/site-tagline/index.js +1 -2
- package/build/site-tagline/index.js.map +1 -1
- package/build/site-title/index.js +0 -1
- package/build/site-title/index.js.map +1 -1
- package/build/social-link/index.js +1 -2
- package/build/social-link/index.js.map +1 -1
- package/build/social-links/index.js +1 -2
- package/build/social-links/index.js.map +1 -1
- package/build/spacer/index.js +0 -1
- package/build/spacer/index.js.map +1 -1
- package/build/table/index.js +1 -7
- package/build/table/index.js.map +1 -1
- package/build/table-of-contents/index.js +0 -1
- package/build/table-of-contents/index.js.map +1 -1
- package/build/tag-cloud/index.js +0 -1
- package/build/tag-cloud/index.js.map +1 -1
- package/build/template-part/index.js +0 -1
- package/build/template-part/index.js.map +1 -1
- package/build/term-description/index.js +0 -1
- package/build/term-description/index.js.map +1 -1
- package/build/text-columns/index.js +0 -1
- package/build/text-columns/index.js.map +1 -1
- package/build/verse/index.js +0 -1
- package/build/verse/index.js.map +1 -1
- package/build/video/index.js +0 -1
- package/build/video/index.js.map +1 -1
- package/build-module/archives/index.js +0 -1
- package/build-module/archives/index.js.map +1 -1
- package/build-module/audio/index.js +0 -1
- package/build-module/audio/index.js.map +1 -1
- package/build-module/block/index.js +0 -1
- package/build-module/block/index.js.map +1 -1
- package/build-module/button/edit.native.js +1 -1
- package/build-module/button/edit.native.js.map +1 -1
- package/build-module/button/index.js +1 -5
- package/build-module/button/index.js.map +1 -1
- package/build-module/buttons/index.js +0 -1
- package/build-module/buttons/index.js.map +1 -1
- package/build-module/buttons/transforms.js +0 -1
- package/build-module/buttons/transforms.js.map +1 -1
- package/build-module/calendar/index.js +0 -1
- package/build-module/calendar/index.js.map +1 -1
- package/build-module/categories/index.js +0 -1
- package/build-module/categories/index.js.map +1 -1
- package/build-module/code/index.js +1 -6
- package/build-module/code/index.js.map +1 -1
- package/build-module/column/index.js +0 -1
- package/build-module/column/index.js.map +1 -1
- package/build-module/columns/index.js +1 -3
- package/build-module/columns/index.js.map +1 -1
- package/build-module/comment-author-avatar/edit.js +2 -3
- package/build-module/comment-author-avatar/edit.js.map +1 -1
- package/build-module/comment-author-avatar/index.js +2 -7
- package/build-module/comment-author-avatar/index.js.map +1 -1
- package/build-module/comment-author-name/index.js +0 -1
- package/build-module/comment-author-name/index.js.map +1 -1
- package/build-module/comment-content/index.js +0 -1
- package/build-module/comment-content/index.js.map +1 -1
- package/build-module/comment-date/index.js +0 -1
- package/build-module/comment-date/index.js.map +1 -1
- package/build-module/comment-edit-link/index.js +1 -2
- package/build-module/comment-edit-link/index.js.map +1 -1
- package/build-module/comment-reply-link/index.js +0 -1
- package/build-module/comment-reply-link/index.js.map +1 -1
- package/build-module/comment-template/edit.js +23 -97
- package/build-module/comment-template/edit.js.map +1 -1
- package/build-module/comment-template/index.js +2 -4
- package/build-module/comment-template/index.js.map +1 -1
- package/build-module/comments-query-loop/edit.js +2 -2
- package/build-module/comments-query-loop/edit.js.map +1 -1
- package/build-module/comments-query-loop/index.js +7 -4
- package/build-module/comments-query-loop/index.js.map +1 -1
- package/build-module/comments-query-loop/toolbar.js +3 -3
- package/build-module/comments-query-loop/toolbar.js.map +1 -1
- package/build-module/cover/edit.js +1 -2
- package/build-module/cover/edit.js.map +1 -1
- package/build-module/cover/index.js +0 -1
- package/build-module/cover/index.js.map +1 -1
- package/build-module/embed/deprecated.js +0 -1
- package/build-module/embed/deprecated.js.map +1 -1
- package/build-module/embed/edit.native.js +21 -24
- package/build-module/embed/edit.native.js.map +1 -1
- package/build-module/embed/embed-bottom-sheet.native.js +74 -0
- package/build-module/embed/embed-bottom-sheet.native.js.map +1 -0
- package/build-module/embed/embed-placeholder.native.js +2 -9
- package/build-module/embed/embed-placeholder.native.js.map +1 -1
- package/build-module/embed/index.js +0 -1
- package/build-module/embed/index.js.map +1 -1
- package/build-module/embed/transforms.js +0 -1
- package/build-module/embed/transforms.js.map +1 -1
- package/build-module/embed/util.js +0 -1
- package/build-module/embed/util.js.map +1 -1
- package/build-module/file/index.js +0 -1
- package/build-module/file/index.js.map +1 -1
- package/build-module/freeform/index.js +0 -1
- package/build-module/freeform/index.js.map +1 -1
- package/build-module/gallery/deprecated.js +2 -6
- package/build-module/gallery/deprecated.js.map +1 -1
- package/build-module/gallery/edit.js +1 -11
- package/build-module/gallery/edit.js.map +1 -1
- package/build-module/gallery/index.js +0 -1
- package/build-module/gallery/index.js.map +1 -1
- package/build-module/group/edit.native.js +1 -1
- package/build-module/group/edit.native.js.map +1 -1
- package/build-module/group/index.js +4 -9
- package/build-module/group/index.js.map +1 -1
- package/build-module/heading/index.js +0 -1
- package/build-module/heading/index.js.map +1 -1
- package/build-module/heading/transforms.js +0 -1
- package/build-module/heading/transforms.js.map +1 -1
- package/build-module/home-link/index.js +0 -1
- package/build-module/home-link/index.js.map +1 -1
- package/build-module/html/index.js +0 -1
- package/build-module/html/index.js.map +1 -1
- package/build-module/image/edit.js +4 -52
- package/build-module/image/edit.js.map +1 -1
- package/build-module/image/edit.native.js +1 -1
- package/build-module/image/edit.native.js.map +1 -1
- package/build-module/image/image.js +5 -16
- package/build-module/image/image.js.map +1 -1
- package/build-module/image/index.js +1 -5
- package/build-module/image/index.js.map +1 -1
- package/build-module/index.js +1 -3
- package/build-module/index.js.map +1 -1
- package/build-module/latest-comments/index.js +0 -1
- package/build-module/latest-comments/index.js.map +1 -1
- package/build-module/latest-posts/deprecated.js +0 -1
- package/build-module/latest-posts/deprecated.js.map +1 -1
- package/build-module/latest-posts/index.js +0 -1
- package/build-module/latest-posts/index.js.map +1 -1
- package/build-module/list/index.js +0 -1
- package/build-module/list/index.js.map +1 -1
- package/build-module/loginout/index.js +0 -1
- package/build-module/loginout/index.js.map +1 -1
- package/build-module/media-text/index.js +0 -1
- package/build-module/media-text/index.js.map +1 -1
- package/build-module/missing/index.js +0 -1
- package/build-module/missing/index.js.map +1 -1
- package/build-module/more/index.js +0 -1
- package/build-module/more/index.js.map +1 -1
- package/build-module/navigation/deprecated.js +1 -3
- package/build-module/navigation/deprecated.js.map +1 -1
- package/build-module/navigation/edit/index.js +104 -59
- package/build-module/navigation/edit/index.js.map +1 -1
- package/build-module/navigation/edit/navigation-menu-selector.js +3 -2
- package/build-module/navigation/edit/navigation-menu-selector.js.map +1 -1
- package/build-module/navigation/edit/placeholder/index.js +15 -7
- package/build-module/navigation/edit/placeholder/index.js.map +1 -1
- package/build-module/navigation/edit/responsive-wrapper.js +9 -7
- package/build-module/navigation/edit/responsive-wrapper.js.map +1 -1
- package/build-module/navigation/edit/unsaved-inner-blocks.js +4 -13
- package/build-module/navigation/edit/unsaved-inner-blocks.js.map +1 -1
- package/build-module/navigation/edit/use-navigation-notice.js +44 -0
- package/build-module/navigation/edit/use-navigation-notice.js.map +1 -0
- package/build-module/navigation/index.js +2 -9
- package/build-module/navigation/index.js.map +1 -1
- package/build-module/navigation/menu-items-to-blocks.js +1 -4
- package/build-module/navigation/menu-items-to-blocks.js.map +1 -1
- package/build-module/navigation/use-navigation-menu.js +9 -2
- package/build-module/navigation/use-navigation-menu.js.map +1 -1
- package/build-module/navigation/view.js +12 -7
- package/build-module/navigation/view.js.map +1 -1
- package/build-module/navigation-area/edit.js +1 -2
- package/build-module/navigation-area/edit.js.map +1 -1
- package/build-module/navigation-area/index.js +1 -2
- package/build-module/navigation-area/index.js.map +1 -1
- package/build-module/navigation-link/edit.js +0 -7
- package/build-module/navigation-link/edit.js.map +1 -1
- package/build-module/navigation-link/index.js +0 -1
- package/build-module/navigation-link/index.js.map +1 -1
- package/build-module/navigation-submenu/edit.js +0 -1
- package/build-module/navigation-submenu/edit.js.map +1 -1
- package/build-module/navigation-submenu/index.js +0 -1
- package/build-module/navigation-submenu/index.js.map +1 -1
- package/build-module/nextpage/index.js +0 -1
- package/build-module/nextpage/index.js.map +1 -1
- package/build-module/page-list/index.js +1 -6
- package/build-module/page-list/index.js.map +1 -1
- package/build-module/paragraph/edit.js +3 -13
- package/build-module/paragraph/edit.js.map +1 -1
- package/build-module/paragraph/index.js +0 -1
- package/build-module/paragraph/index.js.map +1 -1
- package/build-module/paragraph/transforms.js +0 -1
- package/build-module/paragraph/transforms.js.map +1 -1
- package/build-module/pattern/index.js +0 -1
- package/build-module/pattern/index.js.map +1 -1
- package/build-module/post-author/edit.js +1 -1
- package/build-module/post-author/edit.js.map +1 -1
- package/build-module/post-author/index.js +0 -1
- package/build-module/post-author/index.js.map +1 -1
- package/build-module/post-comment/index.js +0 -1
- package/build-module/post-comment/index.js.map +1 -1
- package/build-module/post-comments/index.js +0 -1
- package/build-module/post-comments/index.js.map +1 -1
- package/build-module/post-comments-count/index.js +0 -1
- package/build-module/post-comments-count/index.js.map +1 -1
- package/build-module/post-comments-form/index.js +0 -1
- package/build-module/post-comments-form/index.js.map +1 -1
- package/build-module/post-comments-link/index.js +0 -1
- package/build-module/post-comments-link/index.js.map +1 -1
- package/build-module/post-content/edit.js +1 -1
- package/build-module/post-content/edit.js.map +1 -1
- package/build-module/post-content/index.js +0 -1
- package/build-module/post-content/index.js.map +1 -1
- package/build-module/post-date/edit.js +1 -1
- package/build-module/post-date/edit.js.map +1 -1
- package/build-module/post-date/index.js +0 -1
- package/build-module/post-date/index.js.map +1 -1
- package/build-module/post-excerpt/edit.js +1 -1
- package/build-module/post-excerpt/edit.js.map +1 -1
- package/build-module/post-excerpt/index.js +0 -1
- package/build-module/post-excerpt/index.js.map +1 -1
- package/build-module/post-featured-image/dimension-controls.js +29 -52
- package/build-module/post-featured-image/dimension-controls.js.map +1 -1
- package/build-module/post-featured-image/edit.js +5 -9
- package/build-module/post-featured-image/edit.js.map +1 -1
- package/build-module/post-featured-image/index.js +0 -1
- package/build-module/post-featured-image/index.js.map +1 -1
- package/build-module/post-navigation-link/index.js +0 -1
- package/build-module/post-navigation-link/index.js.map +1 -1
- package/build-module/post-template/index.js +0 -1
- package/build-module/post-template/index.js.map +1 -1
- package/build-module/post-terms/index.js +0 -1
- package/build-module/post-terms/index.js.map +1 -1
- package/build-module/post-title/edit.js +1 -1
- package/build-module/post-title/edit.js.map +1 -1
- package/build-module/post-title/index.js +0 -1
- package/build-module/post-title/index.js.map +1 -1
- package/build-module/preformatted/edit.native.js +1 -2
- package/build-module/preformatted/edit.native.js.map +1 -1
- package/build-module/preformatted/index.js +0 -1
- package/build-module/preformatted/index.js.map +1 -1
- package/build-module/pullquote/index.js +1 -8
- package/build-module/pullquote/index.js.map +1 -1
- package/build-module/query/index.js +0 -1
- package/build-module/query/index.js.map +1 -1
- package/build-module/query-pagination/index.js +0 -1
- package/build-module/query-pagination/index.js.map +1 -1
- package/build-module/query-pagination-next/index.js +0 -1
- package/build-module/query-pagination-next/index.js.map +1 -1
- package/build-module/query-pagination-numbers/index.js +0 -1
- package/build-module/query-pagination-numbers/index.js.map +1 -1
- package/build-module/query-pagination-previous/index.js +0 -1
- package/build-module/query-pagination-previous/index.js.map +1 -1
- package/build-module/query-title/index.js +0 -1
- package/build-module/query-title/index.js.map +1 -1
- package/build-module/quote/index.js +0 -1
- package/build-module/quote/index.js.map +1 -1
- package/build-module/rss/index.js +0 -1
- package/build-module/rss/index.js.map +1 -1
- package/build-module/search/edit.js +3 -5
- package/build-module/search/edit.js.map +1 -1
- package/build-module/search/index.js +1 -8
- package/build-module/search/index.js.map +1 -1
- package/build-module/separator/index.js +0 -1
- package/build-module/separator/index.js.map +1 -1
- package/build-module/shortcode/index.js +0 -1
- package/build-module/shortcode/index.js.map +1 -1
- package/build-module/site-logo/edit.js +120 -19
- package/build-module/site-logo/edit.js.map +1 -1
- package/build-module/site-logo/index.js +5 -5
- package/build-module/site-tagline/index.js +1 -2
- package/build-module/site-tagline/index.js.map +1 -1
- package/build-module/site-title/index.js +0 -1
- package/build-module/site-title/index.js.map +1 -1
- package/build-module/social-link/index.js +1 -2
- package/build-module/social-link/index.js.map +1 -1
- package/build-module/social-links/index.js +1 -2
- package/build-module/social-links/index.js.map +1 -1
- package/build-module/spacer/index.js +0 -1
- package/build-module/spacer/index.js.map +1 -1
- package/build-module/table/index.js +1 -7
- package/build-module/table/index.js.map +1 -1
- package/build-module/table-of-contents/index.js +0 -1
- package/build-module/table-of-contents/index.js.map +1 -1
- package/build-module/tag-cloud/index.js +0 -1
- package/build-module/tag-cloud/index.js.map +1 -1
- package/build-module/template-part/index.js +0 -1
- package/build-module/template-part/index.js.map +1 -1
- package/build-module/term-description/index.js +0 -1
- package/build-module/term-description/index.js.map +1 -1
- package/build-module/text-columns/index.js +0 -1
- package/build-module/text-columns/index.js.map +1 -1
- package/build-module/verse/index.js +0 -1
- package/build-module/verse/index.js.map +1 -1
- package/build-module/video/index.js +0 -1
- package/build-module/video/index.js.map +1 -1
- package/build-style/columns/style-rtl.css +3 -4
- package/build-style/columns/style.css +3 -4
- package/build-style/common-rtl.css +2 -21
- package/build-style/common.css +2 -21
- package/build-style/cover/style-rtl.css +0 -4
- package/build-style/cover/style.css +0 -4
- package/build-style/editor-rtl.css +46 -56
- package/build-style/editor.css +46 -59
- package/build-style/gallery/editor-rtl.css +12 -0
- package/build-style/gallery/editor.css +12 -0
- package/build-style/gallery/style-rtl.css +0 -3
- package/build-style/gallery/style.css +0 -3
- package/build-style/group/theme-rtl.css +1 -1
- package/build-style/group/theme.css +1 -1
- package/build-style/{comments-pagination → home-link}/style-rtl.css +21 -21
- package/build-style/{comments-pagination/editor.css → home-link/style.css} +22 -20
- package/build-style/navigation/editor-rtl.css +15 -6
- package/build-style/navigation/editor.css +15 -6
- package/build-style/navigation/style-rtl.css +45 -18
- package/build-style/navigation/style.css +45 -18
- package/build-style/page-list/style-rtl.css +4 -4
- package/build-style/page-list/style.css +4 -4
- package/build-style/post-comments/style-rtl.css +0 -1
- package/build-style/post-comments/style.css +0 -1
- package/build-style/post-featured-image/editor-rtl.css +7 -0
- package/build-style/post-featured-image/editor.css +7 -0
- package/build-style/post-featured-image/style-rtl.css +1 -1
- package/build-style/post-featured-image/style.css +1 -1
- package/build-style/post-template/style-rtl.css +2 -29
- package/build-style/post-template/style.css +2 -29
- package/build-style/post-title/style-rtl.css +0 -3
- package/build-style/post-title/style.css +0 -3
- package/build-style/pullquote/style-rtl.css +0 -1
- package/build-style/pullquote/style.css +0 -1
- package/build-style/query-pagination/editor-rtl.css +4 -0
- package/build-style/query-pagination/editor.css +4 -0
- package/build-style/query-pagination/style-rtl.css +2 -6
- package/build-style/query-pagination/style.css +2 -6
- package/build-style/site-logo/editor-rtl.css +1 -11
- package/build-style/site-logo/editor.css +1 -11
- package/build-style/site-logo/style-rtl.css +3 -1
- package/build-style/site-logo/style.css +3 -1
- package/build-style/style-rtl.css +107 -158
- package/build-style/style.css +107 -160
- package/build-style/table/style-rtl.css +0 -1
- package/build-style/table/style.css +0 -1
- package/build-style/theme-rtl.css +1 -1
- package/build-style/theme.css +1 -1
- package/package.json +30 -31
- package/src/archives/block.json +0 -1
- package/src/audio/block.json +0 -1
- package/src/block/block.json +0 -1
- package/src/button/block.json +1 -5
- package/src/button/edit.native.js +1 -1
- package/src/buttons/block.json +1 -2
- package/src/calendar/block.json +0 -1
- package/src/calendar/index.php +39 -35
- package/src/categories/block.json +0 -1
- package/src/code/block.json +1 -6
- package/src/column/block.json +0 -1
- package/src/columns/block.json +1 -3
- package/src/columns/style.scss +5 -8
- package/src/comment-author-avatar/block.json +2 -7
- package/src/comment-author-avatar/edit.js +2 -7
- package/src/comment-author-avatar/index.php +6 -25
- package/src/comment-author-name/block.json +0 -1
- package/src/comment-content/block.json +0 -1
- package/src/comment-date/block.json +0 -1
- package/src/comment-edit-link/block.json +0 -1
- package/src/comment-edit-link/index.js +1 -1
- package/src/comment-reply-link/block.json +0 -1
- package/src/comment-template/block.json +2 -4
- package/src/comment-template/edit.js +37 -111
- package/src/comment-template/index.php +19 -46
- package/src/comments-query-loop/block.json +7 -4
- package/src/comments-query-loop/edit.js +5 -2
- package/src/comments-query-loop/toolbar.js +3 -3
- package/src/common.scss +2 -21
- package/src/cover/block.json +0 -1
- package/src/cover/edit.js +0 -1
- package/src/cover/style.scss +0 -4
- package/src/editor.scss +7 -6
- package/src/embed/block.json +0 -1
- package/src/embed/edit.native.js +18 -23
- package/src/embed/embed-bottom-sheet.native.js +78 -0
- package/src/embed/embed-placeholder.native.js +0 -8
- package/src/embed/test/__snapshots__/index.native.js.snap +0 -10
- package/src/embed/test/index.native.js +88 -228
- package/src/file/block.json +0 -1
- package/src/freeform/block.json +0 -1
- package/src/gallery/block.json +0 -1
- package/src/gallery/deprecated.js +2 -5
- package/src/gallery/edit.js +0 -20
- package/src/gallery/editor.scss +14 -0
- package/src/gallery/index.php +1 -1
- package/src/gallery/style.scss +0 -4
- package/src/group/block.json +4 -9
- package/src/group/edit.native.js +1 -1
- package/src/group/theme.scss +5 -4
- package/src/heading/block.json +0 -1
- package/src/home-link/block.json +0 -1
- package/src/home-link/index.php +3 -3
- package/src/home-link/style.scss +51 -0
- package/src/html/block.json +0 -1
- package/src/image/block.json +1 -5
- package/src/image/edit.js +0 -44
- package/src/image/edit.native.js +1 -1
- package/src/image/image.js +3 -14
- package/src/index.js +0 -4
- package/src/latest-comments/block.json +0 -1
- package/src/latest-posts/block.json +0 -1
- package/src/list/block.json +0 -1
- package/src/loginout/block.json +0 -1
- package/src/media-text/block.json +0 -1
- package/src/missing/block.json +0 -1
- package/src/more/block.json +0 -1
- package/src/navigation/block.json +11 -11
- package/src/navigation/deprecated.js +0 -2
- package/src/navigation/edit/index.js +172 -89
- package/src/navigation/edit/navigation-menu-selector.js +19 -13
- package/src/navigation/edit/placeholder/index.js +40 -24
- package/src/navigation/edit/responsive-wrapper.js +10 -7
- package/src/navigation/edit/unsaved-inner-blocks.js +13 -25
- package/src/navigation/edit/use-navigation-notice.js +37 -0
- package/src/navigation/editor.scss +20 -8
- package/src/navigation/index.php +23 -12
- package/src/navigation/menu-items-to-blocks.js +1 -2
- package/src/navigation/style.scss +58 -19
- package/src/navigation/use-navigation-menu.js +20 -0
- package/src/navigation/view.js +13 -7
- package/src/navigation-area/block.json +7 -3
- package/src/navigation-area/edit.js +1 -2
- package/src/navigation-link/block.json +3 -2
- package/src/navigation-link/edit.js +0 -5
- package/src/navigation-link/index.php +3 -3
- package/src/navigation-submenu/block.json +3 -2
- package/src/navigation-submenu/index.php +5 -5
- package/src/nextpage/block.json +0 -1
- package/src/page-list/block.json +0 -4
- package/src/page-list/index.php +4 -4
- package/src/page-list/style.scss +4 -4
- package/src/paragraph/block.json +0 -1
- package/src/paragraph/edit.js +4 -12
- package/src/pattern/block.json +0 -1
- package/src/post-author/block.json +0 -1
- package/src/post-author/edit.js +1 -1
- package/src/post-comment/block.json +0 -1
- package/src/post-comments/block.json +0 -1
- package/src/post-comments/style.scss +0 -1
- package/src/post-comments-count/block.json +0 -1
- package/src/post-comments-form/block.json +1 -6
- package/src/post-comments-link/block.json +0 -1
- package/src/post-content/block.json +0 -1
- package/src/post-content/edit.js +1 -1
- package/src/post-content/index.php +11 -1
- package/src/post-date/block.json +0 -1
- package/src/post-date/edit.js +1 -1
- package/src/post-excerpt/block.json +0 -1
- package/src/post-excerpt/edit.js +1 -1
- package/src/post-excerpt/index.php +1 -1
- package/src/post-featured-image/block.json +0 -1
- package/src/post-featured-image/dimension-controls.js +50 -75
- package/src/post-featured-image/edit.js +6 -13
- package/src/post-featured-image/editor.scss +8 -0
- package/src/post-featured-image/style.scss +1 -1
- package/src/post-navigation-link/block.json +0 -1
- package/src/post-template/block.json +0 -1
- package/src/post-template/style.scss +2 -13
- package/src/post-terms/block.json +0 -1
- package/src/post-title/block.json +0 -1
- package/src/post-title/edit.js +1 -1
- package/src/post-title/index.php +1 -1
- package/src/post-title/style.scss +2 -6
- package/src/preformatted/block.json +0 -1
- package/src/preformatted/edit.native.js +1 -3
- package/src/pullquote/block.json +1 -8
- package/src/pullquote/style.scss +0 -1
- package/src/query/block.json +0 -1
- package/src/query-pagination/block.json +0 -1
- package/src/query-pagination/editor.scss +4 -0
- package/src/query-pagination/style.scss +2 -12
- package/src/query-pagination-next/block.json +0 -1
- package/src/query-pagination-next/index.php +20 -42
- package/src/query-pagination-numbers/block.json +0 -1
- package/src/query-pagination-previous/block.json +0 -1
- package/src/query-pagination-previous/index.php +13 -45
- package/src/query-title/block.json +0 -1
- package/src/quote/block.json +0 -1
- package/src/rss/block.json +0 -1
- package/src/search/block.json +1 -8
- package/src/search/edit.js +1 -2
- package/src/search/index.php +19 -29
- package/src/separator/block.json +0 -1
- package/src/shortcode/block.json +0 -1
- package/src/site-logo/block.json +5 -5
- package/src/site-logo/edit.js +133 -14
- package/src/site-logo/editor.scss +1 -15
- package/src/site-logo/index.php +17 -4
- package/src/site-logo/style.scss +3 -1
- package/src/site-tagline/block.json +1 -2
- package/src/site-title/block.json +0 -1
- package/src/social-link/block.json +1 -2
- package/src/social-links/block.json +8 -3
- package/src/spacer/block.json +0 -1
- package/src/style.scss +2 -3
- package/src/table/block.json +1 -7
- package/src/table/style.scss +0 -1
- package/src/table-of-contents/block.json +0 -1
- package/src/tag-cloud/block.json +0 -1
- package/src/template-part/block.json +0 -1
- package/src/term-description/block.json +0 -1
- package/src/text-columns/block.json +0 -1
- package/src/verse/block.json +0 -1
- package/src/video/block.json +0 -1
- package/build/comment-template/util.js +0 -66
- package/build/comment-template/util.js.map +0 -1
- package/build/comments-pagination/comments-pagination-arrow-controls.js +0 -39
- package/build/comments-pagination/comments-pagination-arrow-controls.js.map +0 -1
- package/build/comments-pagination/edit.js +0 -80
- package/build/comments-pagination/edit.js.map +0 -1
- package/build/comments-pagination/index.js +0 -71
- package/build/comments-pagination/index.js.map +0 -1
- package/build/comments-pagination/save.js +0 -18
- package/build/comments-pagination/save.js.map +0 -1
- package/build/comments-pagination-numbers/edit.js +0 -47
- package/build/comments-pagination-numbers/edit.js.map +0 -1
- package/build/comments-pagination-numbers/index.js +0 -47
- package/build/comments-pagination-numbers/index.js.map +0 -1
- package/build/embed/embed-controls.native.js +0 -69
- package/build/embed/embed-controls.native.js.map +0 -1
- package/build/embed/embed-link-settings.native.js +0 -101
- package/build/embed/embed-link-settings.native.js.map +0 -1
- package/build/gallery/use-mobile-warning.js +0 -43
- package/build/gallery/use-mobile-warning.js.map +0 -1
- package/build-module/comment-template/util.js +0 -57
- package/build-module/comment-template/util.js.map +0 -1
- package/build-module/comments-pagination/comments-pagination-arrow-controls.js +0 -30
- package/build-module/comments-pagination/comments-pagination-arrow-controls.js.map +0 -1
- package/build-module/comments-pagination/edit.js +0 -67
- package/build-module/comments-pagination/edit.js.map +0 -1
- package/build-module/comments-pagination/index.js +0 -57
- package/build-module/comments-pagination/index.js.map +0 -1
- package/build-module/comments-pagination/save.js +0 -10
- package/build-module/comments-pagination/save.js.map +0 -1
- package/build-module/comments-pagination-numbers/edit.js +0 -40
- package/build-module/comments-pagination-numbers/edit.js.map +0 -1
- package/build-module/comments-pagination-numbers/index.js +0 -34
- package/build-module/comments-pagination-numbers/index.js.map +0 -1
- package/build-module/embed/embed-controls.native.js +0 -54
- package/build-module/embed/embed-controls.native.js.map +0 -1
- package/build-module/embed/embed-link-settings.native.js +0 -90
- package/build-module/embed/embed-link-settings.native.js.map +0 -1
- package/build-module/gallery/use-mobile-warning.js +0 -32
- package/build-module/gallery/use-mobile-warning.js.map +0 -1
- package/build-style/comment-template/style-rtl.css +0 -91
- package/build-style/comment-template/style.css +0 -91
- package/build-style/comments-pagination/editor-rtl.css +0 -100
- package/build-style/comments-pagination/style.css +0 -106
- package/build-style/comments-pagination-numbers/editor-rtl.css +0 -85
- package/build-style/comments-pagination-numbers/editor.css +0 -86
- package/src/comment-template/style.scss +0 -17
- package/src/comment-template/test/index.js +0 -45
- package/src/comment-template/util.js +0 -56
- package/src/comments-pagination/block.json +0 -37
- package/src/comments-pagination/comments-pagination-arrow-controls.js +0 -44
- package/src/comments-pagination/edit.js +0 -78
- package/src/comments-pagination/editor.scss +0 -34
- package/src/comments-pagination/index.js +0 -20
- package/src/comments-pagination/index.php +0 -39
- package/src/comments-pagination/save.js +0 -8
- package/src/comments-pagination/style.scss +0 -38
- package/src/comments-pagination-numbers/block.json +0 -16
- package/src/comments-pagination-numbers/edit.js +0 -22
- package/src/comments-pagination-numbers/editor.scss +0 -12
- package/src/comments-pagination-numbers/index.js +0 -18
- package/src/comments-pagination-numbers/index.php +0 -69
- package/src/embed/embed-controls.native.js +0 -65
- package/src/embed/embed-link-settings.native.js +0 -100
- package/src/gallery/test/use-get-new-images.js +0 -93
- package/src/gallery/use-mobile-warning.js +0 -28
- package/src/navigation/README.md +0 -13
|
@@ -4,7 +4,7 @@ import { createElement, Fragment } from "@wordpress/element";
|
|
|
4
4
|
* External dependencies
|
|
5
5
|
*/
|
|
6
6
|
import classnames from 'classnames';
|
|
7
|
-
import noop from 'lodash';
|
|
7
|
+
import { noop } from 'lodash';
|
|
8
8
|
/**
|
|
9
9
|
* WordPress dependencies
|
|
10
10
|
*/
|
|
@@ -12,7 +12,7 @@ import noop from 'lodash';
|
|
|
12
12
|
import { useState, useEffect, useRef, useCallback, Platform } from '@wordpress/element';
|
|
13
13
|
import { InspectorControls, BlockControls, useBlockProps, __experimentalUseNoRecursiveRenders as useNoRecursiveRenders, store as blockEditorStore, withColors, PanelColorSettings, ContrastChecker, getColorClassName, Warning } from '@wordpress/block-editor';
|
|
14
14
|
import { EntityProvider, useEntityProp } from '@wordpress/core-data';
|
|
15
|
-
import { useDispatch, useSelect } from '@wordpress/data';
|
|
15
|
+
import { useDispatch, useSelect, useRegistry } from '@wordpress/data';
|
|
16
16
|
import { PanelBody, ToggleControl, __experimentalToggleGroupControl as ToggleGroupControl, __experimentalToggleGroupControlOption as ToggleGroupControlOption, ToolbarGroup, ToolbarDropdownMenu, Button } from '@wordpress/components';
|
|
17
17
|
import { __ } from '@wordpress/i18n';
|
|
18
18
|
/**
|
|
@@ -29,6 +29,8 @@ import NavigationMenuSelector from './navigation-menu-selector';
|
|
|
29
29
|
import NavigationMenuNameControl from './navigation-menu-name-control';
|
|
30
30
|
import UnsavedInnerBlocks from './unsaved-inner-blocks';
|
|
31
31
|
import NavigationMenuDeleteControl from './navigation-menu-delete-control';
|
|
32
|
+
import useNavigationNotice from './use-navigation-notice';
|
|
33
|
+
const EMPTY_ARRAY = [];
|
|
32
34
|
|
|
33
35
|
function getComputedStyle(node) {
|
|
34
36
|
return node.ownerDocument.defaultView.getComputedStyle(node);
|
|
@@ -82,7 +84,8 @@ function Navigation(_ref) {
|
|
|
82
84
|
showSubmenuIcon,
|
|
83
85
|
layout: {
|
|
84
86
|
justifyContent,
|
|
85
|
-
orientation = 'horizontal'
|
|
87
|
+
orientation = 'horizontal',
|
|
88
|
+
flexWrap = 'wrap'
|
|
86
89
|
} = {}
|
|
87
90
|
} = attributes;
|
|
88
91
|
let areaMenu,
|
|
@@ -96,6 +99,7 @@ function Navigation(_ref) {
|
|
|
96
99
|
|
|
97
100
|
const navigationAreaMenu = areaMenu === 0 ? undefined : areaMenu;
|
|
98
101
|
const ref = navigationArea ? navigationAreaMenu : attributes.ref;
|
|
102
|
+
const registry = useRegistry();
|
|
99
103
|
const setRef = useCallback(postId => {
|
|
100
104
|
setAttributes({
|
|
101
105
|
ref: postId
|
|
@@ -107,31 +111,41 @@ function Navigation(_ref) {
|
|
|
107
111
|
}, [navigationArea]);
|
|
108
112
|
const [hasAlreadyRendered, RecursionProvider] = useNoRecursiveRenders(`navigationMenu/${ref}`);
|
|
109
113
|
const {
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
114
|
+
hasUncontrolledInnerBlocks,
|
|
115
|
+
uncontrolledInnerBlocks,
|
|
116
|
+
isInnerBlockSelected
|
|
113
117
|
} = useSelect(select => {
|
|
114
118
|
const {
|
|
119
|
+
getBlock,
|
|
115
120
|
getBlocks,
|
|
116
121
|
hasSelectedInnerBlock
|
|
117
|
-
} = select(blockEditorStore);
|
|
118
|
-
|
|
119
|
-
|
|
122
|
+
} = select(blockEditorStore); // This relies on the fact that `getBlock` won't return controlled
|
|
123
|
+
// inner blocks, while `getBlocks` does. It might be more stable to
|
|
124
|
+
// introduce a selector like `getUncontrolledInnerBlocks`, just in
|
|
125
|
+
// case `getBlock` is fixed.
|
|
126
|
+
|
|
127
|
+
const _uncontrolledInnerBlocks = getBlock(clientId).innerBlocks;
|
|
128
|
+
|
|
129
|
+
const _hasUncontrolledInnerBlocks = _uncontrolledInnerBlocks === null || _uncontrolledInnerBlocks === void 0 ? void 0 : _uncontrolledInnerBlocks.length;
|
|
130
|
+
|
|
131
|
+
const _controlledInnerBlocks = _hasUncontrolledInnerBlocks ? EMPTY_ARRAY : getBlocks(clientId);
|
|
132
|
+
|
|
133
|
+
const innerBlocks = _hasUncontrolledInnerBlocks ? _uncontrolledInnerBlocks : _controlledInnerBlocks;
|
|
120
134
|
return {
|
|
121
|
-
hasSubmenus:
|
|
122
|
-
|
|
135
|
+
hasSubmenus: !!innerBlocks.find(block => block.name === 'core/navigation-submenu'),
|
|
136
|
+
hasUncontrolledInnerBlocks: _hasUncontrolledInnerBlocks,
|
|
137
|
+
uncontrolledInnerBlocks: _uncontrolledInnerBlocks,
|
|
123
138
|
isInnerBlockSelected: hasSelectedInnerBlock(clientId, true)
|
|
124
139
|
};
|
|
125
140
|
}, [clientId]);
|
|
126
|
-
const hasExistingNavItems = !!innerBlocks.length;
|
|
127
141
|
const {
|
|
128
142
|
replaceInnerBlocks,
|
|
129
143
|
selectBlock,
|
|
130
144
|
__unstableMarkNextChangeAsNotPersistent
|
|
131
145
|
} = useDispatch(blockEditorStore);
|
|
132
146
|
const [hasSavedUnsavedInnerBlocks, setHasSavedUnsavedInnerBlocks] = useState(false);
|
|
133
|
-
const isWithinUnassignedArea = navigationArea && !ref;
|
|
134
|
-
const [isPlaceholderShown, setIsPlaceholderShown] = useState(!
|
|
147
|
+
const isWithinUnassignedArea = !!navigationArea && !ref;
|
|
148
|
+
const [isPlaceholderShown, setIsPlaceholderShown] = useState(!hasUncontrolledInnerBlocks || isWithinUnassignedArea);
|
|
135
149
|
const [isResponsiveMenuOpen, setResponsiveMenuVisibility] = useState(false);
|
|
136
150
|
const {
|
|
137
151
|
isNavigationMenuResolved,
|
|
@@ -139,7 +153,13 @@ function Navigation(_ref) {
|
|
|
139
153
|
canSwitchNavigationMenu,
|
|
140
154
|
hasResolvedNavigationMenus,
|
|
141
155
|
navigationMenus,
|
|
142
|
-
navigationMenu
|
|
156
|
+
navigationMenu,
|
|
157
|
+
canUserUpdateNavigationEntity,
|
|
158
|
+
hasResolvedCanUserUpdateNavigationEntity,
|
|
159
|
+
canUserDeleteNavigationEntity,
|
|
160
|
+
hasResolvedCanUserDeleteNavigationEntity,
|
|
161
|
+
canUserCreateNavigation,
|
|
162
|
+
hasResolvedCanUserCreateNavigation
|
|
143
163
|
} = useNavigationMenu(ref);
|
|
144
164
|
const navRef = useRef();
|
|
145
165
|
const isDraftNavigationMenu = (navigationMenu === null || navigationMenu === void 0 ? void 0 : navigationMenu.status) === 'draft';
|
|
@@ -153,6 +173,10 @@ function Navigation(_ref) {
|
|
|
153
173
|
className: classnames(className, {
|
|
154
174
|
'items-justified-right': justifyContent === 'right',
|
|
155
175
|
'items-justified-space-between': justifyContent === 'space-between',
|
|
176
|
+
'items-justified-left': justifyContent === 'left',
|
|
177
|
+
'items-justified-center': justifyContent === 'center',
|
|
178
|
+
'is-vertical': orientation === 'vertical',
|
|
179
|
+
'no-wrap': flexWrap === 'nowrap',
|
|
156
180
|
'is-responsive': 'never' !== overlayMenu,
|
|
157
181
|
'has-text-color': !!textColor.color || !!(textColor !== null && textColor !== void 0 && textColor.class),
|
|
158
182
|
[getColorClassName('color', textColor === null || textColor === void 0 ? void 0 : textColor.slug)]: !!(textColor !== null && textColor !== void 0 && textColor.slug),
|
|
@@ -192,12 +216,14 @@ function Navigation(_ref) {
|
|
|
192
216
|
}
|
|
193
217
|
}, [orientation]);
|
|
194
218
|
useEffect(() => {
|
|
219
|
+
var _navRef$current;
|
|
220
|
+
|
|
195
221
|
if (!enableContrastChecking) {
|
|
196
222
|
return;
|
|
197
223
|
}
|
|
198
224
|
|
|
199
225
|
detectColors(navRef.current, setDetectedColor, setDetectedBackgroundColor);
|
|
200
|
-
const subMenuElement = navRef.current.querySelector('[data-type="core/navigation-link"] [data-type="core/navigation-link"]');
|
|
226
|
+
const subMenuElement = (_navRef$current = navRef.current) === null || _navRef$current === void 0 ? void 0 : _navRef$current.querySelector('[data-type="core/navigation-link"] [data-type="core/navigation-link"]');
|
|
201
227
|
|
|
202
228
|
if (subMenuElement) {
|
|
203
229
|
detectColors(subMenuElement, setDetectedOverlayColor, setDetectedOverlayBackgroundColor);
|
|
@@ -206,47 +232,78 @@ function Navigation(_ref) {
|
|
|
206
232
|
|
|
207
233
|
useEffect(() => {
|
|
208
234
|
setIsPlaceholderShown(!isEntityAvailable);
|
|
209
|
-
}, [isEntityAvailable]);
|
|
210
|
-
|
|
211
|
-
|
|
235
|
+
}, [isEntityAvailable]);
|
|
236
|
+
const [showCantEditNotice, hideCantEditNotice] = useNavigationNotice({
|
|
237
|
+
name: 'block-library/core/navigation/permissions/update',
|
|
238
|
+
message: __('You do not have permission to edit this Menu. Any changes made will not be saved.')
|
|
239
|
+
});
|
|
240
|
+
const [showCantCreateNotice, hideCantCreateNotice] = useNavigationNotice({
|
|
241
|
+
name: 'block-library/core/navigation/permissions/create',
|
|
242
|
+
message: __('You do not have permission to create Navigation Menus.')
|
|
243
|
+
});
|
|
212
244
|
useEffect(() => {
|
|
213
|
-
if (
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
245
|
+
if (!isSelected && !isInnerBlockSelected) {
|
|
246
|
+
hideCantEditNotice();
|
|
247
|
+
hideCantCreateNotice();
|
|
248
|
+
}
|
|
217
249
|
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
250
|
+
if (isSelected || isInnerBlockSelected) {
|
|
251
|
+
if (hasResolvedCanUserUpdateNavigationEntity && !canUserUpdateNavigationEntity) {
|
|
252
|
+
showCantEditNotice();
|
|
253
|
+
}
|
|
254
|
+
|
|
255
|
+
if (!ref && hasResolvedCanUserCreateNavigation && !canUserCreateNavigation) {
|
|
256
|
+
showCantCreateNotice();
|
|
257
|
+
}
|
|
222
258
|
}
|
|
259
|
+
}, [isSelected, isInnerBlockSelected, canUserUpdateNavigationEntity, hasResolvedCanUserUpdateNavigationEntity, canUserCreateNavigation, hasResolvedCanUserCreateNavigation, ref]);
|
|
260
|
+
const startWithEmptyMenu = useCallback(() => {
|
|
261
|
+
registry.batch(() => {
|
|
262
|
+
if (navigationArea) {
|
|
263
|
+
setAreaMenu(0);
|
|
264
|
+
}
|
|
223
265
|
|
|
224
|
-
|
|
225
|
-
|
|
266
|
+
setAttributes({
|
|
267
|
+
ref: undefined
|
|
268
|
+
});
|
|
269
|
+
|
|
270
|
+
if (!ref) {
|
|
271
|
+
replaceInnerBlocks(clientId, []);
|
|
272
|
+
}
|
|
273
|
+
|
|
274
|
+
setIsPlaceholderShown(true);
|
|
226
275
|
});
|
|
227
|
-
|
|
228
|
-
}, [clientId]); // If the block has inner blocks, but no menu id, this was an older
|
|
276
|
+
}, [clientId, ref]); // If the block has inner blocks, but no menu id, this was an older
|
|
229
277
|
// navigation block added before the block used a wp_navigation entity.
|
|
230
278
|
// Either this block was saved in the content or inserted by a pattern.
|
|
231
279
|
// Consider this 'unsaved'. Offer an uncontrolled version of inner blocks,
|
|
232
280
|
// that automatically saves the menu.
|
|
233
281
|
|
|
234
|
-
const hasUnsavedBlocks =
|
|
282
|
+
const hasUnsavedBlocks = hasUncontrolledInnerBlocks && !isEntityAvailable;
|
|
235
283
|
|
|
236
284
|
if (hasUnsavedBlocks) {
|
|
237
|
-
return createElement(
|
|
285
|
+
return createElement("nav", blockProps, createElement(ResponsiveWrapper, {
|
|
286
|
+
id: clientId,
|
|
287
|
+
onToggle: setResponsiveMenuVisibility,
|
|
288
|
+
isOpen: isResponsiveMenuOpen,
|
|
289
|
+
isResponsive: 'never' !== overlayMenu,
|
|
290
|
+
isHiddenByDefault: 'always' === overlayMenu,
|
|
291
|
+
classNames: overlayClassnames,
|
|
292
|
+
styles: overlayStyles
|
|
293
|
+
}, createElement(UnsavedInnerBlocks, {
|
|
238
294
|
blockProps: blockProps,
|
|
239
|
-
blocks:
|
|
295
|
+
blocks: uncontrolledInnerBlocks,
|
|
240
296
|
clientId: clientId,
|
|
241
297
|
navigationMenus: navigationMenus,
|
|
242
298
|
hasSelection: isSelected || isInnerBlockSelected,
|
|
243
299
|
hasSavedUnsavedInnerBlocks: hasSavedUnsavedInnerBlocks,
|
|
244
300
|
onSave: post => {
|
|
301
|
+
// Set some state used as a guard to prevent the creation of multiple posts.
|
|
245
302
|
setHasSavedUnsavedInnerBlocks(true); // Switch to using the wp_navigation entity.
|
|
246
303
|
|
|
247
304
|
setRef(post.id);
|
|
248
305
|
}
|
|
249
|
-
});
|
|
306
|
+
})));
|
|
250
307
|
} // Show a warning if the selected menu is no longer available.
|
|
251
308
|
// TODO - the user should be able to select a new one?
|
|
252
309
|
|
|
@@ -283,7 +340,8 @@ function Navigation(_ref) {
|
|
|
283
340
|
setRef(id);
|
|
284
341
|
onClose();
|
|
285
342
|
},
|
|
286
|
-
onCreateNew: startWithEmptyMenu
|
|
343
|
+
onCreateNew: startWithEmptyMenu,
|
|
344
|
+
showCreate: canUserCreateNavigation
|
|
287
345
|
});
|
|
288
346
|
})), createElement(ToolbarGroup, null, listViewToolbarButton)), listViewModal, createElement(InspectorControls, null, hasSubmenuIndicatorSetting && createElement(PanelBody, {
|
|
289
347
|
title: __('Display')
|
|
@@ -305,28 +363,23 @@ function Navigation(_ref) {
|
|
|
305
363
|
}), createElement(ToggleGroupControlOption, {
|
|
306
364
|
value: "always",
|
|
307
365
|
label: __('Always')
|
|
308
|
-
})),
|
|
366
|
+
})), createElement("h3", null, __('Submenus')), createElement(ToggleControl, {
|
|
309
367
|
checked: openSubmenusOnClick,
|
|
310
368
|
onChange: value => {
|
|
311
369
|
setAttributes({
|
|
312
|
-
openSubmenusOnClick: value
|
|
313
|
-
...(value && {
|
|
314
|
-
showSubmenuIcon: true
|
|
315
|
-
}) // Make sure arrows are shown when we toggle this on.
|
|
316
|
-
|
|
370
|
+
openSubmenusOnClick: value
|
|
317
371
|
});
|
|
318
372
|
},
|
|
319
373
|
label: __('Open on click')
|
|
320
|
-
}), createElement(ToggleControl, {
|
|
374
|
+
}), !attributes.openSubmenusOnClick && createElement(ToggleControl, {
|
|
321
375
|
checked: showSubmenuIcon,
|
|
322
376
|
onChange: value => {
|
|
323
377
|
setAttributes({
|
|
324
378
|
showSubmenuIcon: value
|
|
325
379
|
});
|
|
326
380
|
},
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
}))), hasColorSettings && createElement(PanelColorSettings, {
|
|
381
|
+
label: __('Show icons')
|
|
382
|
+
})), hasColorSettings && createElement(PanelColorSettings, {
|
|
330
383
|
__experimentalHasMultipleOrigins: true,
|
|
331
384
|
__experimentalIsRenderedInSidebar: true,
|
|
332
385
|
title: __('Color'),
|
|
@@ -356,17 +409,8 @@ function Navigation(_ref) {
|
|
|
356
409
|
textColor: detectedOverlayColor
|
|
357
410
|
})))), isEntityAvailable && createElement(InspectorControls, {
|
|
358
411
|
__experimentalGroup: "advanced"
|
|
359
|
-
}, createElement(NavigationMenuNameControl, null), createElement(NavigationMenuDeleteControl, {
|
|
360
|
-
onDelete:
|
|
361
|
-
if (navigationArea) {
|
|
362
|
-
setAreaMenu(0);
|
|
363
|
-
}
|
|
364
|
-
|
|
365
|
-
setAttributes({
|
|
366
|
-
ref: undefined
|
|
367
|
-
});
|
|
368
|
-
setIsPlaceholderShown(true);
|
|
369
|
-
}
|
|
412
|
+
}, hasResolvedCanUserUpdateNavigationEntity && canUserUpdateNavigationEntity && createElement(NavigationMenuNameControl, null), hasResolvedCanUserDeleteNavigationEntity && canUserDeleteNavigationEntity && createElement(NavigationMenuDeleteControl, {
|
|
413
|
+
onDelete: startWithEmptyMenu
|
|
370
414
|
})), createElement("nav", blockProps, isPlaceholderShown && createElement(PlaceholderComponent, {
|
|
371
415
|
onFinish: post => {
|
|
372
416
|
setIsPlaceholderShown(false);
|
|
@@ -379,8 +423,9 @@ function Navigation(_ref) {
|
|
|
379
423
|
},
|
|
380
424
|
canSwitchNavigationMenu: canSwitchNavigationMenu,
|
|
381
425
|
hasResolvedNavigationMenus: hasResolvedNavigationMenus,
|
|
382
|
-
clientId: clientId
|
|
383
|
-
|
|
426
|
+
clientId: clientId,
|
|
427
|
+
canUserCreateNavigation: canUserCreateNavigation
|
|
428
|
+
}), !hasResolvedCanUserCreateNavigation || !isEntityAvailable && !isPlaceholderShown && createElement(PlaceholderPreview, {
|
|
384
429
|
isLoading: true
|
|
385
430
|
}), !isPlaceholderShown && createElement(ResponsiveWrapper, {
|
|
386
431
|
id: clientId,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/block-library/src/navigation/edit/index.js"],"names":["classnames","noop","useState","useEffect","useRef","useCallback","Platform","InspectorControls","BlockControls","useBlockProps","__experimentalUseNoRecursiveRenders","useNoRecursiveRenders","store","blockEditorStore","withColors","PanelColorSettings","ContrastChecker","getColorClassName","Warning","EntityProvider","useEntityProp","useDispatch","useSelect","PanelBody","ToggleControl","__experimentalToggleGroupControl","ToggleGroupControl","__experimentalToggleGroupControlOption","ToggleGroupControlOption","ToolbarGroup","ToolbarDropdownMenu","Button","__","useListViewModal","useNavigationMenu","Placeholder","PlaceholderPreview","ResponsiveWrapper","NavigationInnerBlocks","NavigationMenuSelector","NavigationMenuNameControl","UnsavedInnerBlocks","NavigationMenuDeleteControl","getComputedStyle","node","ownerDocument","defaultView","detectColors","colorsDetectionElement","setColor","setBackground","color","backgroundColorNode","backgroundColor","parentNode","nodeType","ELEMENT_NODE","Navigation","attributes","setAttributes","clientId","isSelected","className","setBackgroundColor","textColor","setTextColor","overlayBackgroundColor","setOverlayBackgroundColor","overlayTextColor","setOverlayTextColor","context","navigationArea","hasSubmenuIndicatorSetting","hasColorSettings","customPlaceholder","CustomPlaceholder","customAppender","CustomAppender","openSubmenusOnClick","overlayMenu","showSubmenuIcon","layout","justifyContent","orientation","areaMenu","setAreaMenu","process","env","GUTENBERG_PHASE","navigationAreaMenu","undefined","ref","setRef","postId","hasAlreadyRendered","RecursionProvider","innerBlocks","isInnerBlockSelected","hasSubmenus","select","getBlocks","hasSelectedInnerBlock","blocks","firstSubmenu","find","block","name","hasExistingNavItems","length","replaceInnerBlocks","selectBlock","__unstableMarkNextChangeAsNotPersistent","hasSavedUnsavedInnerBlocks","setHasSavedUnsavedInnerBlocks","isWithinUnassignedArea","isPlaceholderShown","setIsPlaceholderShown","isResponsiveMenuOpen","setResponsiveMenuVisibility","isNavigationMenuResolved","isNavigationMenuMissing","canSwitchNavigationMenu","hasResolvedNavigationMenus","navigationMenus","navigationMenu","navRef","isDraftNavigationMenu","status","listViewToolbarButton","listViewModal","isEntityAvailable","blockProps","class","slug","style","overlayClassnames","overlayStyles","enableContrastChecking","OS","detectedBackgroundColor","setDetectedBackgroundColor","detectedColor","setDetectedColor","detectedOverlayBackgroundColor","setDetectedOverlayBackgroundColor","detectedOverlayColor","setDetectedOverlayColor","current","subMenuElement","querySelector","startWithEmptyMenu","hasUnsavedBlocks","post","id","PlaceholderComponent","onClose","value","onChange","label"],"mappings":";;AAAA;AACA;AACA;AACA,OAAOA,UAAP,MAAuB,YAAvB;AACA,OAAOC,IAAP,MAAiB,QAAjB;AAEA;AACA;AACA;;AACA,SACCC,QADD,EAECC,SAFD,EAGCC,MAHD,EAICC,WAJD,EAKCC,QALD,QAMO,oBANP;AAOA,SACCC,iBADD,EAECC,aAFD,EAGCC,aAHD,EAICC,mCAAmC,IAAIC,qBAJxC,EAKCC,KAAK,IAAIC,gBALV,EAMCC,UAND,EAOCC,kBAPD,EAQCC,eARD,EASCC,iBATD,EAUCC,OAVD,QAWO,yBAXP;AAYA,SAASC,cAAT,EAAyBC,aAAzB,QAA8C,sBAA9C;AACA,SAASC,WAAT,EAAsBC,SAAtB,QAAuC,iBAAvC;AACA,SACCC,SADD,EAECC,aAFD,EAGCC,gCAAgC,IAAIC,kBAHrC,EAICC,sCAAsC,IAAIC,wBAJ3C,EAKCC,YALD,EAMCC,mBAND,EAOCC,MAPD,QAQO,uBARP;AASA,SAASC,EAAT,QAAmB,iBAAnB;AAEA;AACA;AACA;;AACA,OAAOC,gBAAP,MAA6B,uBAA7B;AACA,OAAOC,iBAAP,MAA8B,wBAA9B;AACA,OAAOC,WAAP,MAAwB,eAAxB;AACA,OAAOC,kBAAP,MAA+B,mCAA/B;AACA,OAAOC,iBAAP,MAA8B,sBAA9B;AACA,OAAOC,qBAAP,MAAkC,gBAAlC;AACA,OAAOC,sBAAP,MAAmC,4BAAnC;AACA,OAAOC,yBAAP,MAAsC,gCAAtC;AACA,OAAOC,kBAAP,MAA+B,wBAA/B;AACA,OAAOC,2BAAP,MAAwC,kCAAxC;;AAEA,SAASC,gBAAT,CAA2BC,IAA3B,EAAkC;AACjC,SAAOA,IAAI,CAACC,aAAL,CAAmBC,WAAnB,CAA+BH,gBAA/B,CAAiDC,IAAjD,CAAP;AACA;;AAED,SAASG,YAAT,CAAuBC,sBAAvB,EAA+CC,QAA/C,EAAyDC,aAAzD,EAAyE;AACxE,MAAK,CAAEF,sBAAP,EAAgC;AAC/B;AACA;;AACDC,EAAAA,QAAQ,CAAEN,gBAAgB,CAAEK,sBAAF,CAAhB,CAA2CG,KAA7C,CAAR;AAEA,MAAIC,mBAAmB,GAAGJ,sBAA1B;AACA,MAAIK,eAAe,GAAGV,gBAAgB,CAAES,mBAAF,CAAhB,CACpBC,eADF;;AAEA,SACCA,eAAe,KAAK,kBAApB,IACAD,mBAAmB,CAACE,UADpB,IAEAF,mBAAmB,CAACE,UAApB,CAA+BC,QAA/B,KACCH,mBAAmB,CAACE,UAApB,CAA+BE,YAJjC,EAKE;AACDJ,IAAAA,mBAAmB,GAAGA,mBAAmB,CAACE,UAA1C;AACAD,IAAAA,eAAe,GAAGV,gBAAgB,CAAES,mBAAF,CAAhB,CAChBC,eADF;AAEA;;AAEDH,EAAAA,aAAa,CAAEG,eAAF,CAAb;AACA;;AAED,SAASI,UAAT,OAsBI;AAAA,MAtBiB;AACpBC,IAAAA,UADoB;AAEpBC,IAAAA,aAFoB;AAGpBC,IAAAA,QAHoB;AAIpBC,IAAAA,UAJoB;AAKpBC,IAAAA,SALoB;AAMpBT,IAAAA,eANoB;AAOpBU,IAAAA,kBAPoB;AAQpBC,IAAAA,SARoB;AASpBC,IAAAA,YAToB;AAUpBC,IAAAA,sBAVoB;AAWpBC,IAAAA,yBAXoB;AAYpBC,IAAAA,gBAZoB;AAapBC,IAAAA,mBAboB;AAcpBC,IAAAA,OAAO,EAAE;AAAEC,MAAAA;AAAF,KAdW;AAgBpB;AACA;AACAC,IAAAA,0BAA0B,GAAG,IAlBT;AAmBpBC,IAAAA,gBAAgB,GAAG,IAnBC;AAoBpBC,IAAAA,iBAAiB,EAAEC,iBAAiB,GAAG,IApBnB;AAqBpBC,IAAAA,cAAc,EAAEC,cAAc,GAAG;AArBb,GAsBjB;AACH,QAAM;AACLC,IAAAA,mBADK;AAELC,IAAAA,WAFK;AAGLC,IAAAA,eAHK;AAILC,IAAAA,MAAM,EAAE;AAAEC,MAAAA,cAAF;AAAkBC,MAAAA,WAAW,GAAG;AAAhC,QAAiD;AAJpD,MAKFzB,UALJ;AAOA,MAAI0B,QAAJ;AAAA,MACCC,WAAW,GAAGpF,IADf,CARG,CAUH;AACA;;AACA,MAAKqF,OAAO,CAACC,GAAR,CAAYC,eAAZ,KAAgC,CAArC,EAAyC;AACxC;AACA,KAAEJ,QAAF,EAAYC,WAAZ,IAA4BjE,aAAa,CACxC,MADwC,EAExC,gBAFwC,EAGxC,YAHwC,EAIxCmD,cAJwC,CAAzC;AAMA;;AAED,QAAMkB,kBAAkB,GAAGL,QAAQ,KAAK,CAAb,GAAiBM,SAAjB,GAA6BN,QAAxD;AAEA,QAAMO,GAAG,GAAGpB,cAAc,GAAGkB,kBAAH,GAAwB/B,UAAU,CAACiC,GAA7D;AAEA,QAAMC,MAAM,GAAGvF,WAAW,CACvBwF,MAAF,IAAc;AACblC,IAAAA,aAAa,CAAE;AAAEgC,MAAAA,GAAG,EAAEE;AAAP,KAAF,CAAb;;AACA,QAAKtB,cAAL,EAAsB;AACrBc,MAAAA,WAAW,CAAEQ,MAAF,CAAX;AACA;AACD,GANwB,EAOzB,CAAEtB,cAAF,CAPyB,CAA1B;AAUA,QAAM,CAAEuB,kBAAF,EAAsBC,iBAAtB,IAA4CpF,qBAAqB,CACrE,kBAAkBgF,GAAK,EAD8C,CAAvE;AAIA,QAAM;AAAEK,IAAAA,WAAF;AAAeC,IAAAA,oBAAf;AAAqCC,IAAAA;AAArC,MAAqD5E,SAAS,CACjE6E,MAAF,IAAc;AACb,UAAM;AAAEC,MAAAA,SAAF;AAAaC,MAAAA;AAAb,QAAuCF,MAAM,CAClDtF,gBADkD,CAAnD;AAGA,UAAMyF,MAAM,GAAGF,SAAS,CAAExC,QAAF,CAAxB;AACA,UAAM2C,YAAY,GAAG,CAAC,CAAED,MAAM,CAACE,IAAP,CACrBC,KAAF,IAAaA,KAAK,CAACC,IAAN,KAAe,yBADL,CAAxB;AAIA,WAAO;AACNR,MAAAA,WAAW,EAAEK,YADP;AAENP,MAAAA,WAAW,EAAEM,MAFP;AAGNL,MAAAA,oBAAoB,EAAEI,qBAAqB,CAAEzC,QAAF,EAAY,IAAZ;AAHrC,KAAP;AAKA,GAfkE,EAgBnE,CAAEA,QAAF,CAhBmE,CAApE;AAkBA,QAAM+C,mBAAmB,GAAG,CAAC,CAAEX,WAAW,CAACY,MAA3C;AACA,QAAM;AACLC,IAAAA,kBADK;AAELC,IAAAA,WAFK;AAGLC,IAAAA;AAHK,MAIF1F,WAAW,CAAER,gBAAF,CAJf;AAMA,QAAM,CACLmG,0BADK,EAELC,6BAFK,IAGF/G,QAAQ,CAAE,KAAF,CAHZ;AAKA,QAAMgH,sBAAsB,GAAG3C,cAAc,IAAI,CAAEoB,GAAnD;AAEA,QAAM,CAAEwB,kBAAF,EAAsBC,qBAAtB,IAAgDlH,QAAQ,CAC7D,CAAEyG,mBAAF,IAAyBO,sBADoC,CAA9D;AAIA,QAAM,CAAEG,oBAAF,EAAwBC,2BAAxB,IAAwDpH,QAAQ,CACrE,KADqE,CAAtE;AAIA,QAAM;AACLqH,IAAAA,wBADK;AAELC,IAAAA,uBAFK;AAGLC,IAAAA,uBAHK;AAILC,IAAAA,0BAJK;AAKLC,IAAAA,eALK;AAMLC,IAAAA;AANK,MAOF1F,iBAAiB,CAAEyD,GAAF,CAPrB;AASA,QAAMkC,MAAM,GAAGzH,MAAM,EAArB;AACA,QAAM0H,qBAAqB,GAAG,CAAAF,cAAc,SAAd,IAAAA,cAAc,WAAd,YAAAA,cAAc,CAAEG,MAAhB,MAA2B,OAAzD;AAEA,QAAM;AAAEC,IAAAA,qBAAF;AAAyBC,IAAAA;AAAzB,MAA2ChG,gBAAgB,CAChE2B,QADgE,CAAjE;AAIA,QAAMsE,iBAAiB,GACtB,CAAEV,uBAAF,IAA6BD,wBAD9B;AAGA,QAAMY,UAAU,GAAG1H,aAAa,CAAE;AACjCkF,IAAAA,GAAG,EAAEkC,MAD4B;AAEjC/D,IAAAA,SAAS,EAAE9D,UAAU,CAAE8D,SAAF,EAAa;AACjC,+BAAyBoB,cAAc,KAAK,OADX;AAEjC,uCAAiCA,cAAc,KAAK,eAFnB;AAGjC,uBAAiB,YAAYH,WAHI;AAIjC,wBAAkB,CAAC,CAAEf,SAAS,CAACb,KAAb,IAAsB,CAAC,EAAEa,SAAF,aAAEA,SAAF,eAAEA,SAAS,CAAEoE,KAAb,CAJR;AAKjC,OAAEnH,iBAAiB,CAClB,OADkB,EAElB+C,SAFkB,aAElBA,SAFkB,uBAElBA,SAAS,CAAEqE,IAFO,CAAnB,GAGK,CAAC,EAAErE,SAAF,aAAEA,SAAF,eAAEA,SAAS,CAAEqE,IAAb,CAR2B;AASjC,wBAAkB,CAAC,CAAEhF,eAAe,CAACF,KAAnB,IAA4BE,eAAe,CAAC+E,KAT7B;AAUjC,OAAEnH,iBAAiB,CAClB,kBADkB,EAElBoC,eAFkB,aAElBA,eAFkB,uBAElBA,eAAe,CAAEgF,IAFC,CAAnB,GAGK,CAAC,EAAEhF,eAAF,aAAEA,eAAF,eAAEA,eAAe,CAAEgF,IAAnB;AAb2B,KAAb,CAFY;AAiBjCC,IAAAA,KAAK,EAAE;AACNnF,MAAAA,KAAK,EAAE,EAAEa,SAAF,aAAEA,SAAF,eAAEA,SAAS,CAAEqE,IAAb,MAAqBrE,SAArB,aAAqBA,SAArB,uBAAqBA,SAAS,CAAEb,KAAhC,CADD;AAENE,MAAAA,eAAe,EAAE,EAAEA,eAAF,aAAEA,eAAF,eAAEA,eAAe,CAAEgF,IAAnB,MAA2BhF,eAA3B,aAA2BA,eAA3B,uBAA2BA,eAAe,CAAEF,KAA5C;AAFX;AAjB0B,GAAF,CAAhC;AAuBA,QAAMoF,iBAAiB,GAAGvI,UAAU,CAAE;AACrC,sBACC,CAAC,CAAEoE,gBAAgB,CAACjB,KAApB,IAA6B,CAAC,EAAEiB,gBAAF,aAAEA,gBAAF,eAAEA,gBAAgB,CAAEgE,KAApB,CAFM;AAGrC,KAAEnH,iBAAiB,CAClB,OADkB,EAElBmD,gBAFkB,aAElBA,gBAFkB,uBAElBA,gBAAgB,CAAEiE,IAFA,CAAnB,GAGK,CAAC,EAAEjE,gBAAF,aAAEA,gBAAF,eAAEA,gBAAgB,CAAEiE,IAApB,CAN+B;AAOrC,sBACC,CAAC,CAAEnE,sBAAsB,CAACf,KAA1B,KAAmCe,sBAAnC,aAAmCA,sBAAnC,uBAAmCA,sBAAsB,CAAEkE,KAA3D,CARoC;AASrC,KAAEnH,iBAAiB,CAClB,kBADkB,EAElBiD,sBAFkB,aAElBA,sBAFkB,uBAElBA,sBAAsB,CAAEmE,IAFN,CAAnB,GAGK,CAAC,EAAEnE,sBAAF,aAAEA,sBAAF,eAAEA,sBAAsB,CAAEmE,IAA1B;AAZ+B,GAAF,CAApC;AAeA,QAAMG,aAAa,GAAG;AACrBrF,IAAAA,KAAK,EAAE,EAAEiB,gBAAF,aAAEA,gBAAF,eAAEA,gBAAgB,CAAEiE,IAApB,MAA4BjE,gBAA5B,aAA4BA,gBAA5B,uBAA4BA,gBAAgB,CAAEjB,KAA9C,CADc;AAErBE,IAAAA,eAAe,EACd,EAAEa,sBAAF,aAAEA,sBAAF,eAAEA,sBAAsB,CAAEmE,IAA1B,MACAnE,sBADA,aACAA,sBADA,uBACAA,sBAAsB,CAAEf,KADxB,KAEAe,sBAAsB,CAACf;AALH,GAAtB,CAzIG,CAiJH;;AACA,QAAMsF,sBAAsB,GAAGnI,QAAQ,CAACoI,EAAT,KAAgB,KAA/C;AAEA,QAAM,CAAEC,uBAAF,EAA2BC,0BAA3B,IAA0D1I,QAAQ,EAAxE;AACA,QAAM,CAAE2I,aAAF,EAAiBC,gBAAjB,IAAsC5I,QAAQ,EAApD;AACA,QAAM,CACL6I,8BADK,EAELC,iCAFK,IAGF9I,QAAQ,EAHZ;AAIA,QAAM,CAAE+I,oBAAF,EAAwBC,uBAAxB,IAAoDhJ,QAAQ,EAAlE,CA1JG,CA4JH;AACA;;AACAC,EAAAA,SAAS,CAAE,MAAM;AAChB,QAAKgF,WAAL,EAAmB;AAClB4B,MAAAA,uCAAuC;;AACvCpD,MAAAA,aAAa,CAAE;AAAEwB,QAAAA;AAAF,OAAF,CAAb;AACA;AACD,GALQ,EAKN,CAAEA,WAAF,CALM,CAAT;AAOAhF,EAAAA,SAAS,CAAE,MAAM;AAChB,QAAK,CAAEsI,sBAAP,EAAgC;AAC/B;AACA;;AACD1F,IAAAA,YAAY,CACX8E,MAAM,CAACsB,OADI,EAEXL,gBAFW,EAGXF,0BAHW,CAAZ;AAKA,UAAMQ,cAAc,GAAGvB,MAAM,CAACsB,OAAP,CAAeE,aAAf,CACtB,uEADsB,CAAvB;;AAGA,QAAKD,cAAL,EAAsB;AACrBrG,MAAAA,YAAY,CACXqG,cADW,EAEXF,uBAFW,EAGXF,iCAHW,CAAZ;AAKA;AACD,GAnBQ,CAAT,CArKG,CA0LH;;AACA7I,EAAAA,SAAS,CAAE,MAAM;AAChBiH,IAAAA,qBAAqB,CAAE,CAAEc,iBAAJ,CAArB;AACA,GAFQ,EAEN,CAAEA,iBAAF,CAFM,CAAT,CA3LG,CA+LH;AACA;;AACA/H,EAAAA,SAAS,CAAE,MAAM;AAChB,QAAKwF,GAAG,KAAKD,SAAR,IAAqBM,WAAW,CAACY,MAAZ,GAAqB,CAA/C,EAAmD;AAClDC,MAAAA,kBAAkB,CAAEjD,QAAF,EAAY,EAAZ,CAAlB;AACA,KAHe,CAIhB;AACA;;AACA,GANQ,EAMN,CAAEA,QAAF,EAAY+B,GAAZ,EAAiBK,WAAjB,CANM,CAAT;AAQA,QAAMsD,kBAAkB,GAAGjJ,WAAW,CAAE,MAAM;AAC7C,QAAKkE,cAAL,EAAsB;AACrBc,MAAAA,WAAW,CAAE,CAAF,CAAX;AACA;;AACD1B,IAAAA,aAAa,CAAE;AACdgC,MAAAA,GAAG,EAAED;AADS,KAAF,CAAb;AAIA0B,IAAAA,qBAAqB,CAAE,IAAF,CAArB;AACA,GATqC,EASnC,CAAExD,QAAF,CATmC,CAAtC,CAzMG,CAoNH;AACA;AACA;AACA;AACA;;AACA,QAAM2F,gBAAgB,GACrB5C,mBAAmB,IAAI,CAAEuB,iBAAzB,IAA8C,CAAEhB,sBADjD;;AAEA,MAAKqC,gBAAL,EAAwB;AACvB,WACC,cAAC,kBAAD;AACC,MAAA,UAAU,EAAGpB,UADd;AAEC,MAAA,MAAM,EAAGnC,WAFV;AAGC,MAAA,QAAQ,EAAGpC,QAHZ;AAIC,MAAA,eAAe,EAAG+D,eAJnB;AAKC,MAAA,YAAY,EAAG9D,UAAU,IAAIoC,oBAL9B;AAMC,MAAA,0BAA0B,EAAGe,0BAN9B;AAOC,MAAA,MAAM,EAAKwC,IAAF,IAAY;AACpBvC,QAAAA,6BAA6B,CAAE,IAAF,CAA7B,CADoB,CAEpB;;AACArB,QAAAA,MAAM,CAAE4D,IAAI,CAACC,EAAP,CAAN;AACA;AAXF,MADD;AAeA,GA3OE,CA6OH;AACA;;;AACA,MAAK9D,GAAG,IAAI6B,uBAAZ,EAAsC;AACrC,WACC,qBAAUW,UAAV,EACC,cAAC,OAAD,QACGnG,EAAE,CACH,sDADG,CADL,EAIC,cAAC,MAAD;AAAQ,MAAA,OAAO,EAAGsH,kBAAlB;AAAuC,MAAA,OAAO,EAAC;AAA/C,OACGtH,EAAE,CAAE,oBAAF,CADL,CAJD,CADD,CADD;AAYA;;AAED,MAAKkG,iBAAiB,IAAIpC,kBAA1B,EAA+C;AAC9C,WACC,qBAAUqC,UAAV,EACC,cAAC,OAAD,QACGnG,EAAE,CAAE,yCAAF,CADL,CADD,CADD;AAOA;;AAED,QAAM0H,oBAAoB,GAAG/E,iBAAiB,GAC3CA,iBAD2C,GAE3CxC,WAFH;AAIA,SACC,cAAC,cAAD;AAAgB,IAAA,IAAI,EAAC,UAArB;AAAgC,IAAA,IAAI,EAAC,eAArC;AAAqD,IAAA,EAAE,EAAGwD;AAA1D,KACC,cAAC,iBAAD,QACC,cAAC,aAAD,QACG,CAAEmC,qBAAF,IAA2BI,iBAA3B,IACD,cAAC,YAAD,QACC,cAAC,mBAAD;AACC,IAAA,KAAK,EAAGlG,EAAE,CAAE,aAAF,CADX;AAEC,IAAA,IAAI,EAAGA,EAAE,CAAE,aAAF,CAFV;AAGC,IAAA,IAAI,EAAG;AAHR,KAKG;AAAA,QAAE;AAAE2H,MAAAA;AAAF,KAAF;AAAA,WACD,cAAC,sBAAD;AACC,MAAA,QAAQ,EAAG,SAAc;AAAA,YAAZ;AAAEF,UAAAA;AAAF,SAAY;AACxB7D,QAAAA,MAAM,CAAE6D,EAAF,CAAN;AACAE,QAAAA,OAAO;AACP,OAJF;AAKC,MAAA,WAAW,EAAGL;AALf,MADC;AAAA,GALH,CADD,CAFF,EAoBC,cAAC,YAAD,QAAgBtB,qBAAhB,CApBD,CADD,EAuBGC,aAvBH,EAwBC,cAAC,iBAAD,QACGzD,0BAA0B,IAC3B,cAAC,SAAD;AAAW,IAAA,KAAK,EAAGxC,EAAE,CAAE,SAAF;AAArB,KACC,0BAAMA,EAAE,CAAE,cAAF,CAAR,CADD,EAEC,cAAC,kBAAD;AACC,IAAA,KAAK,EAAGA,EAAE,CAAE,wBAAF,CADX;AAEC,IAAA,KAAK,EAAG+C,WAFT;AAGC,IAAA,IAAI,EAAG/C,EAAE,CACR,qEADQ,CAHV;AAMC,IAAA,QAAQ,EAAK4H,KAAF,IACVjG,aAAa,CAAE;AAAEoB,MAAAA,WAAW,EAAE6E;AAAf,KAAF,CAPf;AASC,IAAA,OAAO,MATR;AAUC,IAAA,mBAAmB;AAVpB,KAYC,cAAC,wBAAD;AACC,IAAA,KAAK,EAAC,OADP;AAEC,IAAA,KAAK,EAAG5H,EAAE,CAAE,KAAF;AAFX,IAZD,EAgBC,cAAC,wBAAD;AACC,IAAA,KAAK,EAAC,QADP;AAEC,IAAA,KAAK,EAAGA,EAAE,CAAE,QAAF;AAFX,IAhBD,EAoBC,cAAC,wBAAD;AACC,IAAA,KAAK,EAAC,QADP;AAEC,IAAA,KAAK,EAAGA,EAAE,CAAE,QAAF;AAFX,IApBD,CAFD,EA2BGkE,WAAW,IACZ,8BACC,0BAAMlE,EAAE,CAAE,UAAF,CAAR,CADD,EAEC,cAAC,aAAD;AACC,IAAA,OAAO,EAAG8C,mBADX;AAEC,IAAA,QAAQ,EAAK8E,KAAF,IAAa;AACvBjG,MAAAA,aAAa,CAAE;AACdmB,QAAAA,mBAAmB,EAAE8E,KADP;AAEd,YAAKA,KAAK,IAAI;AACb5E,UAAAA,eAAe,EAAE;AADJ,SAAd,CAFc,CAIT;;AAJS,OAAF,CAAb;AAMA,KATF;AAUC,IAAA,KAAK,EAAGhD,EAAE,CAAE,eAAF;AAVX,IAFD,EAeC,cAAC,aAAD;AACC,IAAA,OAAO,EAAGgD,eADX;AAEC,IAAA,QAAQ,EAAK4E,KAAF,IAAa;AACvBjG,MAAAA,aAAa,CAAE;AACdqB,QAAAA,eAAe,EAAE4E;AADH,OAAF,CAAb;AAGA,KANF;AAOC,IAAA,QAAQ,EACPlG,UAAU,CAACoB,mBARb;AAUC,IAAA,KAAK,EAAG9C,EAAE,CAAE,YAAF;AAVX,IAfD,CA5BF,CAFF,EA6DGyC,gBAAgB,IACjB,cAAC,kBAAD;AACC,IAAA,gCAAgC,MADjC;AAEC,IAAA,iCAAiC,MAFlC;AAGC,IAAA,KAAK,EAAGzC,EAAE,CAAE,OAAF,CAHX;AAIC,IAAA,WAAW,EAAG,KAJf;AAKC,IAAA,aAAa,EAAG,CACf;AACC4H,MAAAA,KAAK,EAAE5F,SAAS,CAACb,KADlB;AAEC0G,MAAAA,QAAQ,EAAE5F,YAFX;AAGC6F,MAAAA,KAAK,EAAE9H,EAAE,CAAE,MAAF;AAHV,KADe,EAMf;AACC4H,MAAAA,KAAK,EAAEvG,eAAe,CAACF,KADxB;AAEC0G,MAAAA,QAAQ,EAAE9F,kBAFX;AAGC+F,MAAAA,KAAK,EAAE9H,EAAE,CAAE,YAAF;AAHV,KANe,EAWf;AACC4H,MAAAA,KAAK,EAAExF,gBAAgB,CAACjB,KADzB;AAEC0G,MAAAA,QAAQ,EAAExF,mBAFX;AAGCyF,MAAAA,KAAK,EAAE9H,EAAE,CAAE,wBAAF;AAHV,KAXe,EAgBf;AACC4H,MAAAA,KAAK,EAAE1F,sBAAsB,CAACf,KAD/B;AAEC0G,MAAAA,QAAQ,EAAE1F,yBAFX;AAGC2F,MAAAA,KAAK,EAAE9H,EAAE,CAAE,8BAAF;AAHV,KAhBe;AALjB,KA4BGyG,sBAAsB,IACvB,8BACC,cAAC,eAAD;AACC,IAAA,eAAe,EACdE,uBAFF;AAIC,IAAA,SAAS,EAAGE;AAJb,IADD,EAOC,cAAC,eAAD;AACC,IAAA,eAAe,EACdE,8BAFF;AAIC,IAAA,SAAS,EAAGE;AAJb,IAPD,CA7BF,CA9DF,CAxBD,EAqIGf,iBAAiB,IAClB,cAAC,iBAAD;AAAmB,IAAA,mBAAmB,EAAC;AAAvC,KACC,cAAC,yBAAD,OADD,EAEC,cAAC,2BAAD;AACC,IAAA,QAAQ,EAAG,MAAM;AAChB,UAAK3D,cAAL,EAAsB;AACrBc,QAAAA,WAAW,CAAE,CAAF,CAAX;AACA;;AACD1B,MAAAA,aAAa,CAAE;AACdgC,QAAAA,GAAG,EAAED;AADS,OAAF,CAAb;AAGA0B,MAAAA,qBAAqB,CAAE,IAAF,CAArB;AACA;AATF,IAFD,CAtIF,EAqJC,qBAAUe,UAAV,EACGhB,kBAAkB,IACnB,cAAC,oBAAD;AACC,IAAA,QAAQ,EAAKqC,IAAF,IAAY;AACtBpC,MAAAA,qBAAqB,CAAE,KAAF,CAArB;;AACA,UAAKoC,IAAL,EAAY;AACX5D,QAAAA,MAAM,CAAE4D,IAAI,CAACC,EAAP,CAAN;AACA;;AACD3C,MAAAA,WAAW,CAAElD,QAAF,CAAX;AACA,KAPF;AAQC,IAAA,uBAAuB,EAAG6D,uBAR3B;AASC,IAAA,0BAA0B,EACzBC,0BAVF;AAYC,IAAA,QAAQ,EAAG9D;AAZZ,IAFF,EAiBG,CAAEsE,iBAAF,IAAuB,CAAEf,kBAAzB,IACD,cAAC,kBAAD;AAAoB,IAAA,SAAS;AAA7B,IAlBF,EAoBG,CAAEA,kBAAF,IACD,cAAC,iBAAD;AACC,IAAA,EAAE,EAAGvD,QADN;AAEC,IAAA,QAAQ,EAAG0D,2BAFZ;AAGC,IAAA,MAAM,EAAGD,oBAHV;AAIC,IAAA,YAAY,EAAG,YAAYtC,WAJ5B;AAKC,IAAA,iBAAiB,EAAG,aAAaA,WALlC;AAMC,IAAA,UAAU,EAAGwD,iBANd;AAOC,IAAA,MAAM,EAAGC;AAPV,KASGN,iBAAiB,IAClB,cAAC,qBAAD;AACC,IAAA,SAAS,EAAG,CAAEf,kBADf;AAEC,IAAA,QAAQ,EAAGvD,QAFZ;AAGC,IAAA,QAAQ,EAAGiB,cAHZ;AAIC,IAAA,oBAAoB,EACnB,CAAC,CAAEF,iBALL;AAOC,IAAA,WAAW,EAAGQ;AAPf,IAVF,CArBF,CArJD,CADD,CADD;AAsMA;;AAED,eAAerE,UAAU,CACxB;AAAEkD,EAAAA,SAAS,EAAE;AAAb,CADwB,EAExB;AAAEX,EAAAA,eAAe,EAAE;AAAnB,CAFwB,EAGxB;AAAEa,EAAAA,sBAAsB,EAAE;AAA1B,CAHwB,EAIxB;AAAEE,EAAAA,gBAAgB,EAAE;AAApB,CAJwB,CAAV,CAKZX,UALY,CAAf","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\nimport noop from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tuseState,\n\tuseEffect,\n\tuseRef,\n\tuseCallback,\n\tPlatform,\n} from '@wordpress/element';\nimport {\n\tInspectorControls,\n\tBlockControls,\n\tuseBlockProps,\n\t__experimentalUseNoRecursiveRenders as useNoRecursiveRenders,\n\tstore as blockEditorStore,\n\twithColors,\n\tPanelColorSettings,\n\tContrastChecker,\n\tgetColorClassName,\n\tWarning,\n} from '@wordpress/block-editor';\nimport { EntityProvider, useEntityProp } from '@wordpress/core-data';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport {\n\tPanelBody,\n\tToggleControl,\n\t__experimentalToggleGroupControl as ToggleGroupControl,\n\t__experimentalToggleGroupControlOption as ToggleGroupControlOption,\n\tToolbarGroup,\n\tToolbarDropdownMenu,\n\tButton,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport useListViewModal from './use-list-view-modal';\nimport useNavigationMenu from '../use-navigation-menu';\nimport Placeholder from './placeholder';\nimport PlaceholderPreview from './placeholder/placeholder-preview';\nimport ResponsiveWrapper from './responsive-wrapper';\nimport NavigationInnerBlocks from './inner-blocks';\nimport NavigationMenuSelector from './navigation-menu-selector';\nimport NavigationMenuNameControl from './navigation-menu-name-control';\nimport UnsavedInnerBlocks from './unsaved-inner-blocks';\nimport NavigationMenuDeleteControl from './navigation-menu-delete-control';\n\nfunction getComputedStyle( node ) {\n\treturn node.ownerDocument.defaultView.getComputedStyle( node );\n}\n\nfunction detectColors( colorsDetectionElement, setColor, setBackground ) {\n\tif ( ! colorsDetectionElement ) {\n\t\treturn;\n\t}\n\tsetColor( getComputedStyle( colorsDetectionElement ).color );\n\n\tlet backgroundColorNode = colorsDetectionElement;\n\tlet backgroundColor = getComputedStyle( backgroundColorNode )\n\t\t.backgroundColor;\n\twhile (\n\t\tbackgroundColor === 'rgba(0, 0, 0, 0)' &&\n\t\tbackgroundColorNode.parentNode &&\n\t\tbackgroundColorNode.parentNode.nodeType ===\n\t\t\tbackgroundColorNode.parentNode.ELEMENT_NODE\n\t) {\n\t\tbackgroundColorNode = backgroundColorNode.parentNode;\n\t\tbackgroundColor = getComputedStyle( backgroundColorNode )\n\t\t\t.backgroundColor;\n\t}\n\n\tsetBackground( backgroundColor );\n}\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\tcontext: { navigationArea },\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\tcustomAppender: CustomAppender = null,\n} ) {\n\tconst {\n\t\topenSubmenusOnClick,\n\t\toverlayMenu,\n\t\tshowSubmenuIcon,\n\t\tlayout: { justifyContent, orientation = 'horizontal' } = {},\n\t} = attributes;\n\n\tlet areaMenu,\n\t\tsetAreaMenu = noop;\n\t// Navigation areas are deprecated and on their way out. Let's not perform\n\t// the request unless we're in an environment where the endpoint exists.\n\tif ( process.env.GUTENBERG_PHASE === 2 ) {\n\t\t// eslint-disable-next-line react-hooks/rules-of-hooks\n\t\t[ areaMenu, setAreaMenu ] = useEntityProp(\n\t\t\t'root',\n\t\t\t'navigationArea',\n\t\t\t'navigation',\n\t\t\tnavigationArea\n\t\t);\n\t}\n\n\tconst navigationAreaMenu = areaMenu === 0 ? undefined : areaMenu;\n\n\tconst ref = navigationArea ? navigationAreaMenu : attributes.ref;\n\n\tconst setRef = useCallback(\n\t\t( postId ) => {\n\t\t\tsetAttributes( { ref: postId } );\n\t\t\tif ( navigationArea ) {\n\t\t\t\tsetAreaMenu( postId );\n\t\t\t}\n\t\t},\n\t\t[ navigationArea ]\n\t);\n\n\tconst [ hasAlreadyRendered, RecursionProvider ] = useNoRecursiveRenders(\n\t\t`navigationMenu/${ ref }`\n\t);\n\n\tconst { innerBlocks, isInnerBlockSelected, hasSubmenus } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getBlocks, hasSelectedInnerBlock } = select(\n\t\t\t\tblockEditorStore\n\t\t\t);\n\t\t\tconst blocks = getBlocks( clientId );\n\t\t\tconst firstSubmenu = !! blocks.find(\n\t\t\t\t( block ) => block.name === 'core/navigation-submenu'\n\t\t\t);\n\n\t\t\treturn {\n\t\t\t\thasSubmenus: firstSubmenu,\n\t\t\t\tinnerBlocks: blocks,\n\t\t\t\tisInnerBlockSelected: hasSelectedInnerBlock( clientId, true ),\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\tconst hasExistingNavItems = !! innerBlocks.length;\n\tconst {\n\t\treplaceInnerBlocks,\n\t\tselectBlock,\n\t\t__unstableMarkNextChangeAsNotPersistent,\n\t} = useDispatch( blockEditorStore );\n\n\tconst [\n\t\thasSavedUnsavedInnerBlocks,\n\t\tsetHasSavedUnsavedInnerBlocks,\n\t] = useState( false );\n\n\tconst isWithinUnassignedArea = navigationArea && ! ref;\n\n\tconst [ isPlaceholderShown, setIsPlaceholderShown ] = useState(\n\t\t! hasExistingNavItems || isWithinUnassignedArea\n\t);\n\n\tconst [ isResponsiveMenuOpen, setResponsiveMenuVisibility ] = useState(\n\t\tfalse\n\t);\n\n\tconst {\n\t\tisNavigationMenuResolved,\n\t\tisNavigationMenuMissing,\n\t\tcanSwitchNavigationMenu,\n\t\thasResolvedNavigationMenus,\n\t\tnavigationMenus,\n\t\tnavigationMenu,\n\t} = useNavigationMenu( ref );\n\n\tconst navRef = useRef();\n\tconst isDraftNavigationMenu = navigationMenu?.status === 'draft';\n\n\tconst { listViewToolbarButton, listViewModal } = useListViewModal(\n\t\tclientId\n\t);\n\n\tconst isEntityAvailable =\n\t\t! isNavigationMenuMissing && isNavigationMenuResolved;\n\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'is-responsive': 'never' !== overlayMenu,\n\t\t\t'has-text-color': !! textColor.color || !! textColor?.class,\n\t\t\t[ getColorClassName(\n\t\t\t\t'color',\n\t\t\t\ttextColor?.slug\n\t\t\t) ]: !! textColor?.slug,\n\t\t\t'has-background': !! backgroundColor.color || backgroundColor.class,\n\t\t\t[ getColorClassName(\n\t\t\t\t'background-color',\n\t\t\t\tbackgroundColor?.slug\n\t\t\t) ]: !! backgroundColor?.slug,\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\tconst overlayClassnames = classnames( {\n\t\t'has-text-color':\n\t\t\t!! overlayTextColor.color || !! overlayTextColor?.class,\n\t\t[ getColorClassName(\n\t\t\t'color',\n\t\t\toverlayTextColor?.slug\n\t\t) ]: !! overlayTextColor?.slug,\n\t\t'has-background':\n\t\t\t!! overlayBackgroundColor.color || overlayBackgroundColor?.class,\n\t\t[ getColorClassName(\n\t\t\t'background-color',\n\t\t\toverlayBackgroundColor?.slug\n\t\t) ]: !! overlayBackgroundColor?.slug,\n\t} );\n\n\tconst overlayStyles = {\n\t\tcolor: ! overlayTextColor?.slug && overlayTextColor?.color,\n\t\tbackgroundColor:\n\t\t\t! overlayBackgroundColor?.slug &&\n\t\t\toverlayBackgroundColor?.color &&\n\t\t\toverlayBackgroundColor.color,\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\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\t// Hide the placeholder if an navigation menu entity has loaded.\n\tuseEffect( () => {\n\t\tsetIsPlaceholderShown( ! isEntityAvailable );\n\t}, [ isEntityAvailable ] );\n\n\t// If the ref no longer exists the reset the inner blocks\n\t// to provide a clean slate.\n\tuseEffect( () => {\n\t\tif ( ref === undefined && innerBlocks.length > 0 ) {\n\t\t\treplaceInnerBlocks( clientId, [] );\n\t\t}\n\t\t// innerBlocks are intentionally not listed as deps. This function is only concerned\n\t\t// with the snapshot from the time when ref became undefined.\n\t}, [ clientId, ref, innerBlocks ] );\n\n\tconst startWithEmptyMenu = useCallback( () => {\n\t\tif ( navigationArea ) {\n\t\t\tsetAreaMenu( 0 );\n\t\t}\n\t\tsetAttributes( {\n\t\t\tref: undefined,\n\t\t} );\n\n\t\tsetIsPlaceholderShown( true );\n\t}, [ clientId ] );\n\n\t// If the block has inner blocks, but no menu id, this was an older\n\t// navigation block added before the block used a wp_navigation entity.\n\t// Either this block was saved in the content or inserted by a pattern.\n\t// Consider this 'unsaved'. Offer an uncontrolled version of inner blocks,\n\t// that automatically saves the menu.\n\tconst hasUnsavedBlocks =\n\t\thasExistingNavItems && ! isEntityAvailable && ! isWithinUnassignedArea;\n\tif ( hasUnsavedBlocks ) {\n\t\treturn (\n\t\t\t<UnsavedInnerBlocks\n\t\t\t\tblockProps={ blockProps }\n\t\t\t\tblocks={ innerBlocks }\n\t\t\t\tclientId={ clientId }\n\t\t\t\tnavigationMenus={ navigationMenus }\n\t\t\t\thasSelection={ isSelected || isInnerBlockSelected }\n\t\t\t\thasSavedUnsavedInnerBlocks={ hasSavedUnsavedInnerBlocks }\n\t\t\t\tonSave={ ( post ) => {\n\t\t\t\t\tsetHasSavedUnsavedInnerBlocks( true );\n\t\t\t\t\t// Switch to using the wp_navigation entity.\n\t\t\t\t\tsetRef( post.id );\n\t\t\t\t} }\n\t\t\t/>\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<div { ...blockProps }>\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 onClick={ startWithEmptyMenu } variant=\"link\">\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</div>\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\treturn (\n\t\t<EntityProvider kind=\"postType\" type=\"wp_navigation\" id={ ref }>\n\t\t\t<RecursionProvider>\n\t\t\t\t<BlockControls>\n\t\t\t\t\t{ ! isDraftNavigationMenu && isEntityAvailable && (\n\t\t\t\t\t\t<ToolbarGroup>\n\t\t\t\t\t\t\t<ToolbarDropdownMenu\n\t\t\t\t\t\t\t\tlabel={ __( 'Select Menu' ) }\n\t\t\t\t\t\t\t\ttext={ __( 'Select Menu' ) }\n\t\t\t\t\t\t\t\ticon={ null }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ ( { onClose } ) => (\n\t\t\t\t\t\t\t\t\t<NavigationMenuSelector\n\t\t\t\t\t\t\t\t\t\tonSelect={ ( { id } ) => {\n\t\t\t\t\t\t\t\t\t\t\tsetRef( id );\n\t\t\t\t\t\t\t\t\t\t\tonClose();\n\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t\tonCreateNew={ startWithEmptyMenu }\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</ToolbarDropdownMenu>\n\t\t\t\t\t\t</ToolbarGroup>\n\t\t\t\t\t) }\n\t\t\t\t\t<ToolbarGroup>{ listViewToolbarButton }</ToolbarGroup>\n\t\t\t\t</BlockControls>\n\t\t\t\t{ listViewModal }\n\t\t\t\t<InspectorControls>\n\t\t\t\t\t{ hasSubmenuIndicatorSetting && (\n\t\t\t\t\t\t<PanelBody title={ __( 'Display' ) }>\n\t\t\t\t\t\t\t<h3>{ __( 'Overlay Menu' ) }</h3>\n\t\t\t\t\t\t\t<ToggleGroupControl\n\t\t\t\t\t\t\t\tlabel={ __( 'Configure overlay menu' ) }\n\t\t\t\t\t\t\t\tvalue={ overlayMenu }\n\t\t\t\t\t\t\t\thelp={ __(\n\t\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\t) }\n\t\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\t\tsetAttributes( { overlayMenu: value } )\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tisBlock\n\t\t\t\t\t\t\t\thideLabelFromVision\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\t\t\tvalue=\"never\"\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Off' ) }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\t\t\tvalue=\"mobile\"\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Mobile' ) }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\t\t\tvalue=\"always\"\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Always' ) }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</ToggleGroupControl>\n\t\t\t\t\t\t\t{ hasSubmenus && (\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t<h3>{ __( 'Submenus' ) }</h3>\n\t\t\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t\t\tchecked={ openSubmenusOnClick }\n\t\t\t\t\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\t\t\topenSubmenusOnClick: value,\n\t\t\t\t\t\t\t\t\t\t\t\t...( value && {\n\t\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\t} ), // Make sure arrows are shown when we toggle this on.\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\tlabel={ __( 'Open on click' ) }\n\t\t\t\t\t\t\t\t\t/>\n\n\t\t\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t\t\tchecked={ showSubmenuIcon }\n\t\t\t\t\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\t\t\tshowSubmenuIcon: value,\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\tdisabled={\n\t\t\t\t\t\t\t\t\t\t\tattributes.openSubmenusOnClick\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tlabel={ __( 'Show arrow' ) }\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</PanelBody>\n\t\t\t\t\t) }\n\t\t\t\t\t{ hasColorSettings && (\n\t\t\t\t\t\t<PanelColorSettings\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\ttitle={ __( 'Color' ) }\n\t\t\t\t\t\t\tinitialOpen={ false }\n\t\t\t\t\t\t\tcolorSettings={ [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tvalue: textColor.color,\n\t\t\t\t\t\t\t\t\tonChange: setTextColor,\n\t\t\t\t\t\t\t\t\tlabel: __( 'Text' ),\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\tvalue: backgroundColor.color,\n\t\t\t\t\t\t\t\t\tonChange: setBackgroundColor,\n\t\t\t\t\t\t\t\t\tlabel: __( 'Background' ),\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\tvalue: overlayTextColor.color,\n\t\t\t\t\t\t\t\t\tonChange: setOverlayTextColor,\n\t\t\t\t\t\t\t\t\tlabel: __( 'Submenu & overlay text' ),\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\tvalue: overlayBackgroundColor.color,\n\t\t\t\t\t\t\t\t\tonChange: setOverlayBackgroundColor,\n\t\t\t\t\t\t\t\t\tlabel: __( 'Submenu & overlay background' ),\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\t{ enableContrastChecking && (\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t<ContrastChecker\n\t\t\t\t\t\t\t\t\t\tbackgroundColor={\n\t\t\t\t\t\t\t\t\t\t\tdetectedBackgroundColor\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\ttextColor={ detectedColor }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t<ContrastChecker\n\t\t\t\t\t\t\t\t\t\tbackgroundColor={\n\t\t\t\t\t\t\t\t\t\t\tdetectedOverlayBackgroundColor\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\ttextColor={ detectedOverlayColor }\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</PanelColorSettings>\n\t\t\t\t\t) }\n\t\t\t\t</InspectorControls>\n\t\t\t\t{ isEntityAvailable && (\n\t\t\t\t\t<InspectorControls __experimentalGroup=\"advanced\">\n\t\t\t\t\t\t<NavigationMenuNameControl />\n\t\t\t\t\t\t<NavigationMenuDeleteControl\n\t\t\t\t\t\t\tonDelete={ () => {\n\t\t\t\t\t\t\t\tif ( navigationArea ) {\n\t\t\t\t\t\t\t\t\tsetAreaMenu( 0 );\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\tref: undefined,\n\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t\tsetIsPlaceholderShown( true );\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\t\t\t\t<nav { ...blockProps }>\n\t\t\t\t\t{ isPlaceholderShown && (\n\t\t\t\t\t\t<PlaceholderComponent\n\t\t\t\t\t\t\tonFinish={ ( post ) => {\n\t\t\t\t\t\t\t\tsetIsPlaceholderShown( false );\n\t\t\t\t\t\t\t\tif ( post ) {\n\t\t\t\t\t\t\t\t\tsetRef( post.id );\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tselectBlock( clientId );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tcanSwitchNavigationMenu={ canSwitchNavigationMenu }\n\t\t\t\t\t\t\thasResolvedNavigationMenus={\n\t\t\t\t\t\t\t\thasResolvedNavigationMenus\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t\t{ ! isEntityAvailable && ! isPlaceholderShown && (\n\t\t\t\t\t\t<PlaceholderPreview isLoading />\n\t\t\t\t\t) }\n\t\t\t\t\t{ ! isPlaceholderShown && (\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\tisOpen={ isResponsiveMenuOpen }\n\t\t\t\t\t\t\tisResponsive={ 'never' !== overlayMenu }\n\t\t\t\t\t\t\tisHiddenByDefault={ 'always' === overlayMenu }\n\t\t\t\t\t\t\tclassNames={ overlayClassnames }\n\t\t\t\t\t\t\tstyles={ overlayStyles }\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\tisVisible={ ! isPlaceholderShown }\n\t\t\t\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\t\t\t\tappender={ CustomAppender }\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\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) }\n\t\t\t\t</nav>\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":["classnames","noop","useState","useEffect","useRef","useCallback","Platform","InspectorControls","BlockControls","useBlockProps","__experimentalUseNoRecursiveRenders","useNoRecursiveRenders","store","blockEditorStore","withColors","PanelColorSettings","ContrastChecker","getColorClassName","Warning","EntityProvider","useEntityProp","useDispatch","useSelect","useRegistry","PanelBody","ToggleControl","__experimentalToggleGroupControl","ToggleGroupControl","__experimentalToggleGroupControlOption","ToggleGroupControlOption","ToolbarGroup","ToolbarDropdownMenu","Button","__","useListViewModal","useNavigationMenu","Placeholder","PlaceholderPreview","ResponsiveWrapper","NavigationInnerBlocks","NavigationMenuSelector","NavigationMenuNameControl","UnsavedInnerBlocks","NavigationMenuDeleteControl","useNavigationNotice","EMPTY_ARRAY","getComputedStyle","node","ownerDocument","defaultView","detectColors","colorsDetectionElement","setColor","setBackground","color","backgroundColorNode","backgroundColor","parentNode","nodeType","ELEMENT_NODE","Navigation","attributes","setAttributes","clientId","isSelected","className","setBackgroundColor","textColor","setTextColor","overlayBackgroundColor","setOverlayBackgroundColor","overlayTextColor","setOverlayTextColor","context","navigationArea","hasSubmenuIndicatorSetting","hasColorSettings","customPlaceholder","CustomPlaceholder","customAppender","CustomAppender","openSubmenusOnClick","overlayMenu","showSubmenuIcon","layout","justifyContent","orientation","flexWrap","areaMenu","setAreaMenu","process","env","GUTENBERG_PHASE","navigationAreaMenu","undefined","ref","registry","setRef","postId","hasAlreadyRendered","RecursionProvider","hasUncontrolledInnerBlocks","uncontrolledInnerBlocks","isInnerBlockSelected","select","getBlock","getBlocks","hasSelectedInnerBlock","_uncontrolledInnerBlocks","innerBlocks","_hasUncontrolledInnerBlocks","length","_controlledInnerBlocks","hasSubmenus","find","block","name","replaceInnerBlocks","selectBlock","__unstableMarkNextChangeAsNotPersistent","hasSavedUnsavedInnerBlocks","setHasSavedUnsavedInnerBlocks","isWithinUnassignedArea","isPlaceholderShown","setIsPlaceholderShown","isResponsiveMenuOpen","setResponsiveMenuVisibility","isNavigationMenuResolved","isNavigationMenuMissing","canSwitchNavigationMenu","hasResolvedNavigationMenus","navigationMenus","navigationMenu","canUserUpdateNavigationEntity","hasResolvedCanUserUpdateNavigationEntity","canUserDeleteNavigationEntity","hasResolvedCanUserDeleteNavigationEntity","canUserCreateNavigation","hasResolvedCanUserCreateNavigation","navRef","isDraftNavigationMenu","status","listViewToolbarButton","listViewModal","isEntityAvailable","blockProps","class","slug","style","overlayClassnames","overlayStyles","enableContrastChecking","OS","detectedBackgroundColor","setDetectedBackgroundColor","detectedColor","setDetectedColor","detectedOverlayBackgroundColor","setDetectedOverlayBackgroundColor","detectedOverlayColor","setDetectedOverlayColor","current","subMenuElement","querySelector","showCantEditNotice","hideCantEditNotice","message","showCantCreateNotice","hideCantCreateNotice","startWithEmptyMenu","batch","hasUnsavedBlocks","post","id","PlaceholderComponent","onClose","value","onChange","label"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\nimport { noop } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tuseState,\n\tuseEffect,\n\tuseRef,\n\tuseCallback,\n\tPlatform,\n} from '@wordpress/element';\nimport {\n\tInspectorControls,\n\tBlockControls,\n\tuseBlockProps,\n\t__experimentalUseNoRecursiveRenders as useNoRecursiveRenders,\n\tstore as blockEditorStore,\n\twithColors,\n\tPanelColorSettings,\n\tContrastChecker,\n\tgetColorClassName,\n\tWarning,\n} from '@wordpress/block-editor';\nimport { EntityProvider, useEntityProp } from '@wordpress/core-data';\n\nimport { useDispatch, useSelect, useRegistry } from '@wordpress/data';\nimport {\n\tPanelBody,\n\tToggleControl,\n\t__experimentalToggleGroupControl as ToggleGroupControl,\n\t__experimentalToggleGroupControlOption as ToggleGroupControlOption,\n\tToolbarGroup,\n\tToolbarDropdownMenu,\n\tButton,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport useListViewModal from './use-list-view-modal';\nimport useNavigationMenu from '../use-navigation-menu';\nimport Placeholder from './placeholder';\nimport PlaceholderPreview from './placeholder/placeholder-preview';\nimport ResponsiveWrapper from './responsive-wrapper';\nimport NavigationInnerBlocks from './inner-blocks';\nimport NavigationMenuSelector from './navigation-menu-selector';\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';\n\nconst EMPTY_ARRAY = [];\n\nfunction getComputedStyle( node ) {\n\treturn node.ownerDocument.defaultView.getComputedStyle( node );\n}\n\nfunction detectColors( colorsDetectionElement, setColor, setBackground ) {\n\tif ( ! colorsDetectionElement ) {\n\t\treturn;\n\t}\n\tsetColor( getComputedStyle( colorsDetectionElement ).color );\n\n\tlet backgroundColorNode = colorsDetectionElement;\n\tlet backgroundColor = getComputedStyle( backgroundColorNode )\n\t\t.backgroundColor;\n\twhile (\n\t\tbackgroundColor === 'rgba(0, 0, 0, 0)' &&\n\t\tbackgroundColorNode.parentNode &&\n\t\tbackgroundColorNode.parentNode.nodeType ===\n\t\t\tbackgroundColorNode.parentNode.ELEMENT_NODE\n\t) {\n\t\tbackgroundColorNode = backgroundColorNode.parentNode;\n\t\tbackgroundColor = getComputedStyle( backgroundColorNode )\n\t\t\t.backgroundColor;\n\t}\n\n\tsetBackground( backgroundColor );\n}\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\tcontext: { navigationArea },\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\tcustomAppender: CustomAppender = null,\n} ) {\n\tconst {\n\t\topenSubmenusOnClick,\n\t\toverlayMenu,\n\t\tshowSubmenuIcon,\n\t\tlayout: {\n\t\t\tjustifyContent,\n\t\t\torientation = 'horizontal',\n\t\t\tflexWrap = 'wrap',\n\t\t} = {},\n\t} = attributes;\n\n\tlet areaMenu,\n\t\tsetAreaMenu = noop;\n\t// Navigation areas are deprecated and on their way out. Let's not perform\n\t// the request unless we're in an environment where the endpoint exists.\n\tif ( process.env.GUTENBERG_PHASE === 2 ) {\n\t\t// eslint-disable-next-line react-hooks/rules-of-hooks\n\t\t[ areaMenu, setAreaMenu ] = useEntityProp(\n\t\t\t'root',\n\t\t\t'navigationArea',\n\t\t\t'navigation',\n\t\t\tnavigationArea\n\t\t);\n\t}\n\n\tconst navigationAreaMenu = areaMenu === 0 ? undefined : areaMenu;\n\n\tconst ref = navigationArea ? navigationAreaMenu : attributes.ref;\n\n\tconst registry = useRegistry();\n\tconst setRef = useCallback(\n\t\t( postId ) => {\n\t\t\tsetAttributes( { ref: postId } );\n\t\t\tif ( navigationArea ) {\n\t\t\t\tsetAreaMenu( postId );\n\t\t\t}\n\t\t},\n\t\t[ navigationArea ]\n\t);\n\n\tconst [ hasAlreadyRendered, RecursionProvider ] = useNoRecursiveRenders(\n\t\t`navigationMenu/${ ref }`\n\t);\n\n\tconst {\n\t\thasUncontrolledInnerBlocks,\n\t\tuncontrolledInnerBlocks,\n\t\tisInnerBlockSelected,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getBlock, getBlocks, hasSelectedInnerBlock } = select(\n\t\t\t\tblockEditorStore\n\t\t\t);\n\n\t\t\t// This relies on the fact that `getBlock` won't return controlled\n\t\t\t// inner blocks, while `getBlocks` does. It might be more stable to\n\t\t\t// introduce a selector like `getUncontrolledInnerBlocks`, just in\n\t\t\t// case `getBlock` is fixed.\n\t\t\tconst _uncontrolledInnerBlocks = getBlock( clientId ).innerBlocks;\n\t\t\tconst _hasUncontrolledInnerBlocks =\n\t\t\t\t_uncontrolledInnerBlocks?.length;\n\t\t\tconst _controlledInnerBlocks = _hasUncontrolledInnerBlocks\n\t\t\t\t? EMPTY_ARRAY\n\t\t\t\t: getBlocks( clientId );\n\t\t\tconst innerBlocks = _hasUncontrolledInnerBlocks\n\t\t\t\t? _uncontrolledInnerBlocks\n\t\t\t\t: _controlledInnerBlocks;\n\n\t\t\treturn {\n\t\t\t\thasSubmenus: !! innerBlocks.find(\n\t\t\t\t\t( block ) => block.name === 'core/navigation-submenu'\n\t\t\t\t),\n\t\t\t\thasUncontrolledInnerBlocks: _hasUncontrolledInnerBlocks,\n\t\t\t\tuncontrolledInnerBlocks: _uncontrolledInnerBlocks,\n\t\t\t\tisInnerBlockSelected: hasSelectedInnerBlock( clientId, true ),\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\tconst {\n\t\treplaceInnerBlocks,\n\t\tselectBlock,\n\t\t__unstableMarkNextChangeAsNotPersistent,\n\t} = useDispatch( blockEditorStore );\n\n\tconst [\n\t\thasSavedUnsavedInnerBlocks,\n\t\tsetHasSavedUnsavedInnerBlocks,\n\t] = useState( false );\n\n\tconst isWithinUnassignedArea = !! navigationArea && ! ref;\n\n\tconst [ isPlaceholderShown, setIsPlaceholderShown ] = useState(\n\t\t! hasUncontrolledInnerBlocks || isWithinUnassignedArea\n\t);\n\n\tconst [ isResponsiveMenuOpen, setResponsiveMenuVisibility ] = useState(\n\t\tfalse\n\t);\n\n\tconst {\n\t\tisNavigationMenuResolved,\n\t\tisNavigationMenuMissing,\n\t\tcanSwitchNavigationMenu,\n\t\thasResolvedNavigationMenus,\n\t\tnavigationMenus,\n\t\tnavigationMenu,\n\t\tcanUserUpdateNavigationEntity,\n\t\thasResolvedCanUserUpdateNavigationEntity,\n\t\tcanUserDeleteNavigationEntity,\n\t\thasResolvedCanUserDeleteNavigationEntity,\n\t\tcanUserCreateNavigation,\n\t\thasResolvedCanUserCreateNavigation,\n\t} = useNavigationMenu( ref );\n\n\tconst navRef = useRef();\n\tconst isDraftNavigationMenu = navigationMenu?.status === 'draft';\n\n\tconst { listViewToolbarButton, listViewModal } = useListViewModal(\n\t\tclientId\n\t);\n\n\tconst isEntityAvailable =\n\t\t! isNavigationMenuMissing && isNavigationMenuResolved;\n\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(\n\t\t\t\t'color',\n\t\t\t\ttextColor?.slug\n\t\t\t) ]: !! textColor?.slug,\n\t\t\t'has-background': !! backgroundColor.color || backgroundColor.class,\n\t\t\t[ getColorClassName(\n\t\t\t\t'background-color',\n\t\t\t\tbackgroundColor?.slug\n\t\t\t) ]: !! backgroundColor?.slug,\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\tconst overlayClassnames = classnames( {\n\t\t'has-text-color':\n\t\t\t!! overlayTextColor.color || !! overlayTextColor?.class,\n\t\t[ getColorClassName(\n\t\t\t'color',\n\t\t\toverlayTextColor?.slug\n\t\t) ]: !! overlayTextColor?.slug,\n\t\t'has-background':\n\t\t\t!! overlayBackgroundColor.color || overlayBackgroundColor?.class,\n\t\t[ getColorClassName(\n\t\t\t'background-color',\n\t\t\toverlayBackgroundColor?.slug\n\t\t) ]: !! overlayBackgroundColor?.slug,\n\t} );\n\n\tconst overlayStyles = {\n\t\tcolor: ! overlayTextColor?.slug && overlayTextColor?.color,\n\t\tbackgroundColor:\n\t\t\t! overlayBackgroundColor?.slug &&\n\t\t\toverlayBackgroundColor?.color &&\n\t\t\toverlayBackgroundColor.color,\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\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\t// Hide the placeholder if an navigation menu entity has loaded.\n\tuseEffect( () => {\n\t\tsetIsPlaceholderShown( ! isEntityAvailable );\n\t}, [ isEntityAvailable ] );\n\n\tconst [ showCantEditNotice, hideCantEditNotice ] = useNavigationNotice( {\n\t\tname: 'block-library/core/navigation/permissions/update',\n\t\tmessage: __(\n\t\t\t'You do not have permission to edit this Menu. Any changes made will not be saved.'\n\t\t),\n\t} );\n\n\tconst [ showCantCreateNotice, hideCantCreateNotice ] = useNavigationNotice(\n\t\t{\n\t\t\tname: 'block-library/core/navigation/permissions/create',\n\t\t\tmessage: __(\n\t\t\t\t'You do not have permission to create Navigation Menus.'\n\t\t\t),\n\t\t}\n\t);\n\n\tuseEffect( () => {\n\t\tif ( ! isSelected && ! isInnerBlockSelected ) {\n\t\t\thideCantEditNotice();\n\t\t\thideCantCreateNotice();\n\t\t}\n\n\t\tif ( isSelected || isInnerBlockSelected ) {\n\t\t\tif (\n\t\t\t\thasResolvedCanUserUpdateNavigationEntity &&\n\t\t\t\t! canUserUpdateNavigationEntity\n\t\t\t) {\n\t\t\t\tshowCantEditNotice();\n\t\t\t}\n\n\t\t\tif (\n\t\t\t\t! ref &&\n\t\t\t\thasResolvedCanUserCreateNavigation &&\n\t\t\t\t! canUserCreateNavigation\n\t\t\t) {\n\t\t\t\tshowCantCreateNotice();\n\t\t\t}\n\t\t}\n\t}, [\n\t\tisSelected,\n\t\tisInnerBlockSelected,\n\t\tcanUserUpdateNavigationEntity,\n\t\thasResolvedCanUserUpdateNavigationEntity,\n\t\tcanUserCreateNavigation,\n\t\thasResolvedCanUserCreateNavigation,\n\t\tref,\n\t] );\n\n\tconst startWithEmptyMenu = useCallback( () => {\n\t\tregistry.batch( () => {\n\t\t\tif ( navigationArea ) {\n\t\t\t\tsetAreaMenu( 0 );\n\t\t\t}\n\t\t\tsetAttributes( {\n\t\t\t\tref: undefined,\n\t\t\t} );\n\t\t\tif ( ! ref ) {\n\t\t\t\treplaceInnerBlocks( clientId, [] );\n\t\t\t}\n\t\t\tsetIsPlaceholderShown( true );\n\t\t} );\n\t}, [ clientId, ref ] );\n\n\t// If the block has inner blocks, but no menu id, this was an older\n\t// navigation block added before the block used a wp_navigation entity.\n\t// Either this block was saved in the content or inserted by a pattern.\n\t// Consider this 'unsaved'. Offer an uncontrolled version of inner blocks,\n\t// that automatically saves the menu.\n\tconst hasUnsavedBlocks = hasUncontrolledInnerBlocks && ! isEntityAvailable;\n\tif ( hasUnsavedBlocks ) {\n\t\treturn (\n\t\t\t<nav { ...blockProps }>\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\tisResponsive={ 'never' !== overlayMenu }\n\t\t\t\t\tisHiddenByDefault={ 'always' === overlayMenu }\n\t\t\t\t\tclassNames={ overlayClassnames }\n\t\t\t\t\tstyles={ overlayStyles }\n\t\t\t\t>\n\t\t\t\t\t<UnsavedInnerBlocks\n\t\t\t\t\t\tblockProps={ blockProps }\n\t\t\t\t\t\tblocks={ uncontrolledInnerBlocks }\n\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\tnavigationMenus={ navigationMenus }\n\t\t\t\t\t\thasSelection={ isSelected || isInnerBlockSelected }\n\t\t\t\t\t\thasSavedUnsavedInnerBlocks={\n\t\t\t\t\t\t\thasSavedUnsavedInnerBlocks\n\t\t\t\t\t\t}\n\t\t\t\t\t\tonSave={ ( post ) => {\n\t\t\t\t\t\t\t// Set some state used as a guard to prevent the creation of multiple posts.\n\t\t\t\t\t\t\tsetHasSavedUnsavedInnerBlocks( true );\n\t\t\t\t\t\t\t// Switch to using the wp_navigation entity.\n\t\t\t\t\t\t\tsetRef( post.id );\n\t\t\t\t\t\t} }\n\t\t\t\t\t/>\n\t\t\t\t</ResponsiveWrapper>\n\t\t\t</nav>\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<div { ...blockProps }>\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 onClick={ startWithEmptyMenu } variant=\"link\">\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</div>\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\treturn (\n\t\t<EntityProvider kind=\"postType\" type=\"wp_navigation\" id={ ref }>\n\t\t\t<RecursionProvider>\n\t\t\t\t<BlockControls>\n\t\t\t\t\t{ ! isDraftNavigationMenu && isEntityAvailable && (\n\t\t\t\t\t\t<ToolbarGroup>\n\t\t\t\t\t\t\t<ToolbarDropdownMenu\n\t\t\t\t\t\t\t\tlabel={ __( 'Select Menu' ) }\n\t\t\t\t\t\t\t\ttext={ __( 'Select Menu' ) }\n\t\t\t\t\t\t\t\ticon={ null }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ ( { onClose } ) => (\n\t\t\t\t\t\t\t\t\t<NavigationMenuSelector\n\t\t\t\t\t\t\t\t\t\tonSelect={ ( { id } ) => {\n\t\t\t\t\t\t\t\t\t\t\tsetRef( id );\n\t\t\t\t\t\t\t\t\t\t\tonClose();\n\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t\tonCreateNew={ startWithEmptyMenu }\n\t\t\t\t\t\t\t\t\t\tshowCreate={ canUserCreateNavigation }\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</ToolbarDropdownMenu>\n\t\t\t\t\t\t</ToolbarGroup>\n\t\t\t\t\t) }\n\t\t\t\t\t<ToolbarGroup>{ listViewToolbarButton }</ToolbarGroup>\n\t\t\t\t</BlockControls>\n\t\t\t\t{ listViewModal }\n\t\t\t\t<InspectorControls>\n\t\t\t\t\t{ hasSubmenuIndicatorSetting && (\n\t\t\t\t\t\t<PanelBody title={ __( 'Display' ) }>\n\t\t\t\t\t\t\t<h3>{ __( 'Overlay Menu' ) }</h3>\n\t\t\t\t\t\t\t<ToggleGroupControl\n\t\t\t\t\t\t\t\tlabel={ __( 'Configure overlay menu' ) }\n\t\t\t\t\t\t\t\tvalue={ overlayMenu }\n\t\t\t\t\t\t\t\thelp={ __(\n\t\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\t) }\n\t\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\t\tsetAttributes( { overlayMenu: value } )\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tisBlock\n\t\t\t\t\t\t\t\thideLabelFromVision\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\t\t\tvalue=\"never\"\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Off' ) }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\t\t\tvalue=\"mobile\"\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Mobile' ) }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\t\t\tvalue=\"always\"\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Always' ) }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</ToggleGroupControl>\n\t\t\t\t\t\t\t<h3>{ __( 'Submenus' ) }</h3>\n\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\tchecked={ openSubmenusOnClick }\n\t\t\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\topenSubmenusOnClick: value,\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\tlabel={ __( 'Open on click' ) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t{ ! attributes.openSubmenusOnClick && (\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\tlabel={ __( 'Show icons' ) }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</PanelBody>\n\t\t\t\t\t) }\n\t\t\t\t\t{ hasColorSettings && (\n\t\t\t\t\t\t<PanelColorSettings\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\ttitle={ __( 'Color' ) }\n\t\t\t\t\t\t\tinitialOpen={ false }\n\t\t\t\t\t\t\tcolorSettings={ [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tvalue: textColor.color,\n\t\t\t\t\t\t\t\t\tonChange: setTextColor,\n\t\t\t\t\t\t\t\t\tlabel: __( 'Text' ),\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\tvalue: backgroundColor.color,\n\t\t\t\t\t\t\t\t\tonChange: setBackgroundColor,\n\t\t\t\t\t\t\t\t\tlabel: __( 'Background' ),\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\tvalue: overlayTextColor.color,\n\t\t\t\t\t\t\t\t\tonChange: setOverlayTextColor,\n\t\t\t\t\t\t\t\t\tlabel: __( 'Submenu & overlay text' ),\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\tvalue: overlayBackgroundColor.color,\n\t\t\t\t\t\t\t\t\tonChange: setOverlayBackgroundColor,\n\t\t\t\t\t\t\t\t\tlabel: __( 'Submenu & overlay background' ),\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\t{ enableContrastChecking && (\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t<ContrastChecker\n\t\t\t\t\t\t\t\t\t\tbackgroundColor={\n\t\t\t\t\t\t\t\t\t\t\tdetectedBackgroundColor\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\ttextColor={ detectedColor }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t<ContrastChecker\n\t\t\t\t\t\t\t\t\t\tbackgroundColor={\n\t\t\t\t\t\t\t\t\t\t\tdetectedOverlayBackgroundColor\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\ttextColor={ detectedOverlayColor }\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</PanelColorSettings>\n\t\t\t\t\t) }\n\t\t\t\t</InspectorControls>\n\t\t\t\t{ isEntityAvailable && (\n\t\t\t\t\t<InspectorControls __experimentalGroup=\"advanced\">\n\t\t\t\t\t\t{ hasResolvedCanUserUpdateNavigationEntity &&\n\t\t\t\t\t\t\tcanUserUpdateNavigationEntity && (\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{ hasResolvedCanUserDeleteNavigationEntity &&\n\t\t\t\t\t\t\tcanUserDeleteNavigationEntity && (\n\t\t\t\t\t\t\t\t<NavigationMenuDeleteControl\n\t\t\t\t\t\t\t\t\tonDelete={ startWithEmptyMenu }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t</InspectorControls>\n\t\t\t\t) }\n\t\t\t\t<nav { ...blockProps }>\n\t\t\t\t\t{ isPlaceholderShown && (\n\t\t\t\t\t\t<PlaceholderComponent\n\t\t\t\t\t\t\tonFinish={ ( post ) => {\n\t\t\t\t\t\t\t\tsetIsPlaceholderShown( false );\n\t\t\t\t\t\t\t\tif ( post ) {\n\t\t\t\t\t\t\t\t\tsetRef( post.id );\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tselectBlock( clientId );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tcanSwitchNavigationMenu={ canSwitchNavigationMenu }\n\t\t\t\t\t\t\thasResolvedNavigationMenus={\n\t\t\t\t\t\t\t\thasResolvedNavigationMenus\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\t\tcanUserCreateNavigation={ canUserCreateNavigation }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t\t{ ! hasResolvedCanUserCreateNavigation ||\n\t\t\t\t\t\t( ! isEntityAvailable && ! isPlaceholderShown && (\n\t\t\t\t\t\t\t<PlaceholderPreview isLoading />\n\t\t\t\t\t\t) ) }\n\t\t\t\t\t{ ! isPlaceholderShown && (\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\tisOpen={ isResponsiveMenuOpen }\n\t\t\t\t\t\t\tisResponsive={ 'never' !== overlayMenu }\n\t\t\t\t\t\t\tisHiddenByDefault={ 'always' === overlayMenu }\n\t\t\t\t\t\t\tclassNames={ overlayClassnames }\n\t\t\t\t\t\t\tstyles={ overlayStyles }\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\tisVisible={ ! isPlaceholderShown }\n\t\t\t\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\t\t\t\tappender={ CustomAppender }\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\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) }\n\t\t\t\t</nav>\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"]}
|
|
@@ -16,7 +16,8 @@ import useNavigationMenu from '../use-navigation-menu';
|
|
|
16
16
|
export default function NavigationMenuSelector(_ref) {
|
|
17
17
|
let {
|
|
18
18
|
onSelect,
|
|
19
|
-
onCreateNew
|
|
19
|
+
onCreateNew,
|
|
20
|
+
showCreate = false
|
|
20
21
|
} = _ref;
|
|
21
22
|
const {
|
|
22
23
|
navigationMenus
|
|
@@ -39,7 +40,7 @@ export default function NavigationMenuSelector(_ref) {
|
|
|
39
40
|
__("Switch to '%s'"), label)
|
|
40
41
|
};
|
|
41
42
|
})
|
|
42
|
-
})), createElement(MenuGroup, null, createElement(MenuItem, {
|
|
43
|
+
})), showCreate && createElement(MenuGroup, null, createElement(MenuItem, {
|
|
43
44
|
onClick: onCreateNew
|
|
44
45
|
}, __('Create new menu')), createElement(MenuItem, {
|
|
45
46
|
href: addQueryArgs('edit.php', {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/block-library/src/navigation/edit/navigation-menu-selector.js"],"names":["MenuGroup","MenuItem","MenuItemsChoice","useEntityId","__","sprintf","decodeEntities","addQueryArgs","useNavigationMenu","NavigationMenuSelector","onSelect","onCreateNew","navigationMenus","ref","selectedId","find","post","id","map","title","label","rendered","value","post_type"],"mappings":";;AAAA;AACA;AACA;AACA,SAASA,SAAT,EAAoBC,QAApB,EAA8BC,eAA9B,QAAqD,uBAArD;AACA,SAASC,WAAT,QAA4B,sBAA5B;AACA,SAASC,EAAT,EAAaC,OAAb,QAA4B,iBAA5B;AACA,SAASC,cAAT,QAA+B,0BAA/B;AACA,SAASC,YAAT,QAA6B,gBAA7B;AAEA;AACA;AACA;;AACA,OAAOC,iBAAP,MAA8B,wBAA9B;AAEA,eAAe,SAASC,sBAAT,
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/navigation/edit/navigation-menu-selector.js"],"names":["MenuGroup","MenuItem","MenuItemsChoice","useEntityId","__","sprintf","decodeEntities","addQueryArgs","useNavigationMenu","NavigationMenuSelector","onSelect","onCreateNew","showCreate","navigationMenus","ref","selectedId","find","post","id","map","title","label","rendered","value","post_type"],"mappings":";;AAAA;AACA;AACA;AACA,SAASA,SAAT,EAAoBC,QAApB,EAA8BC,eAA9B,QAAqD,uBAArD;AACA,SAASC,WAAT,QAA4B,sBAA5B;AACA,SAASC,EAAT,EAAaC,OAAb,QAA4B,iBAA5B;AACA,SAASC,cAAT,QAA+B,0BAA/B;AACA,SAASC,YAAT,QAA6B,gBAA7B;AAEA;AACA;AACA;;AACA,OAAOC,iBAAP,MAA8B,wBAA9B;AAEA,eAAe,SAASC,sBAAT,OAIX;AAAA,MAJ4C;AAC/CC,IAAAA,QAD+C;AAE/CC,IAAAA,WAF+C;AAG/CC,IAAAA,UAAU,GAAG;AAHkC,GAI5C;AACH,QAAM;AAAEC,IAAAA;AAAF,MAAsBL,iBAAiB,EAA7C;AACA,QAAMM,GAAG,GAAGX,WAAW,CAAE,UAAF,EAAc,eAAd,CAAvB;AAEA,SACC,8BACC,cAAC,SAAD,QACC,cAAC,eAAD;AACC,IAAA,KAAK,EAAGW,GADT;AAEC,IAAA,QAAQ,EAAKC,UAAF,IACVL,QAAQ,CACPG,eAAe,CAACG,IAAhB,CACGC,IAAF,IAAYA,IAAI,CAACC,EAAL,KAAYH,UADzB,CADO,CAHV;AASC,IAAA,OAAO,EAAGF,eAAe,CAACM,GAAhB,CAAqB,SAAqB;AAAA,UAAnB;AAAED,QAAAA,EAAF;AAAME,QAAAA;AAAN,OAAmB;AACnD,YAAMC,KAAK,GAAGf,cAAc,CAAEc,KAAK,CAACE,QAAR,CAA5B;AACA,aAAO;AACNC,QAAAA,KAAK,EAAEL,EADD;AAENG,QAAAA,KAFM;AAGN,sBAAchB,OAAO;AACpB;AACAD,QAAAA,EAAE,CAAE,gBAAF,CAFkB,EAGpBiB,KAHoB;AAHf,OAAP;AASA,KAXS;AATX,IADD,CADD,EAyBGT,UAAU,IACX,cAAC,SAAD,QACC,cAAC,QAAD;AAAU,IAAA,OAAO,EAAGD;AAApB,KACGP,EAAE,CAAE,iBAAF,CADL,CADD,EAIC,cAAC,QAAD;AACC,IAAA,IAAI,EAAGG,YAAY,CAAE,UAAF,EAAc;AAChCiB,MAAAA,SAAS,EAAE;AADqB,KAAd;AADpB,KAKGpB,EAAE,CAAE,cAAF,CALL,CAJD,CA1BF,CADD;AA0CA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { MenuGroup, MenuItem, MenuItemsChoice } from '@wordpress/components';\nimport { useEntityId } from '@wordpress/core-data';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { addQueryArgs } from '@wordpress/url';\n\n/**\n * Internal dependencies\n */\nimport useNavigationMenu from '../use-navigation-menu';\n\nexport default function NavigationMenuSelector( {\n\tonSelect,\n\tonCreateNew,\n\tshowCreate = false,\n} ) {\n\tconst { navigationMenus } = useNavigationMenu();\n\tconst ref = useEntityId( 'postType', 'wp_navigation' );\n\n\treturn (\n\t\t<>\n\t\t\t<MenuGroup>\n\t\t\t\t<MenuItemsChoice\n\t\t\t\t\tvalue={ ref }\n\t\t\t\t\tonSelect={ ( selectedId ) =>\n\t\t\t\t\t\tonSelect(\n\t\t\t\t\t\t\tnavigationMenus.find(\n\t\t\t\t\t\t\t\t( post ) => post.id === selectedId\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\tchoices={ navigationMenus.map( ( { id, title } ) => {\n\t\t\t\t\t\tconst label = decodeEntities( title.rendered );\n\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\tvalue: id,\n\t\t\t\t\t\t\tlabel,\n\t\t\t\t\t\t\t'aria-label': sprintf(\n\t\t\t\t\t\t\t\t/* translators: %s: The name of a menu. */\n\t\t\t\t\t\t\t\t__( \"Switch to '%s'\" ),\n\t\t\t\t\t\t\t\tlabel\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</MenuGroup>\n\t\t\t{ showCreate && (\n\t\t\t\t<MenuGroup>\n\t\t\t\t\t<MenuItem onClick={ onCreateNew }>\n\t\t\t\t\t\t{ __( 'Create new menu' ) }\n\t\t\t\t\t</MenuItem>\n\t\t\t\t\t<MenuItem\n\t\t\t\t\t\thref={ addQueryArgs( 'edit.php', {\n\t\t\t\t\t\t\tpost_type: 'wp_navigation',\n\t\t\t\t\t\t} ) }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Manage menus' ) }\n\t\t\t\t\t</MenuItem>\n\t\t\t\t</MenuGroup>\n\t\t\t) }\n\t\t</>\n\t);\n}\n"]}
|
|
@@ -26,7 +26,8 @@ const ExistingMenusDropdown = _ref => {
|
|
|
26
26
|
setSelectedMenu,
|
|
27
27
|
onFinish,
|
|
28
28
|
menus,
|
|
29
|
-
onCreateFromMenu
|
|
29
|
+
onCreateFromMenu,
|
|
30
|
+
showClassicMenus = false
|
|
30
31
|
} = _ref;
|
|
31
32
|
const toggleProps = {
|
|
32
33
|
variant: 'tertiary',
|
|
@@ -55,7 +56,7 @@ const ExistingMenusDropdown = _ref => {
|
|
|
55
56
|
onClose: onClose,
|
|
56
57
|
key: menu.id
|
|
57
58
|
}, decodeEntities(menu.title.rendered));
|
|
58
|
-
}))), createElement(MenuGroup, {
|
|
59
|
+
}))), showClassicMenus && createElement(MenuGroup, {
|
|
59
60
|
label: __('Classic Menus')
|
|
60
61
|
}, menus === null || menus === void 0 ? void 0 : menus.map(menu => {
|
|
61
62
|
return createElement(MenuItem, {
|
|
@@ -75,7 +76,8 @@ export default function NavigationPlaceholder(_ref3) {
|
|
|
75
76
|
clientId,
|
|
76
77
|
onFinish,
|
|
77
78
|
canSwitchNavigationMenu,
|
|
78
|
-
hasResolvedNavigationMenus
|
|
79
|
+
hasResolvedNavigationMenus,
|
|
80
|
+
canUserCreateNavigation = false
|
|
79
81
|
} = _ref3;
|
|
80
82
|
const [selectedMenu, setSelectedMenu] = useState();
|
|
81
83
|
const [isCreatingFromMenu, setIsCreatingFromMenu] = useState(false);
|
|
@@ -84,6 +86,11 @@ export default function NavigationPlaceholder(_ref3) {
|
|
|
84
86
|
|
|
85
87
|
const onFinishMenuCreation = async function (blocks) {
|
|
86
88
|
let navigationMenuTitle = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
|
|
89
|
+
|
|
90
|
+
if (!canUserCreateNavigation) {
|
|
91
|
+
return;
|
|
92
|
+
}
|
|
93
|
+
|
|
87
94
|
const navigationMenu = await createNavigationMenu(navigationMenuTitle, blocks);
|
|
88
95
|
onFinish(navigationMenu, blocks);
|
|
89
96
|
};
|
|
@@ -150,17 +157,18 @@ export default function NavigationPlaceholder(_ref3) {
|
|
|
150
157
|
className: "wp-block-navigation-placeholder__actions__indicator"
|
|
151
158
|
}, createElement(Icon, {
|
|
152
159
|
icon: navigation
|
|
153
|
-
}), ' ', __('Navigation')), createElement("hr", null), hasMenus || navigationMenus.length ? createElement(Fragment, null, createElement(ExistingMenusDropdown, {
|
|
160
|
+
}), ' ', __('Navigation')), createElement("hr", null), hasMenus || navigationMenus !== null && navigationMenus !== void 0 && navigationMenus.length ? createElement(Fragment, null, createElement(ExistingMenusDropdown, {
|
|
154
161
|
canSwitchNavigationMenu: canSwitchNavigationMenu,
|
|
155
162
|
navigationMenus: navigationMenus,
|
|
156
163
|
setSelectedMenu: setSelectedMenu,
|
|
157
164
|
onFinish: onFinish,
|
|
158
165
|
menus: menus,
|
|
159
|
-
onCreateFromMenu: onCreateFromMenu
|
|
160
|
-
|
|
166
|
+
onCreateFromMenu: onCreateFromMenu,
|
|
167
|
+
showClassicMenus: canUserCreateNavigation
|
|
168
|
+
}), createElement("hr", null)) : undefined, canUserCreateNavigation && hasPages ? createElement(Fragment, null, createElement(Button, {
|
|
161
169
|
variant: "tertiary",
|
|
162
170
|
onClick: onCreateAllPages
|
|
163
|
-
}, __('Add all pages')), createElement("hr", null)) : undefined, createElement(Button, {
|
|
171
|
+
}, __('Add all pages')), createElement("hr", null)) : undefined, canUserCreateNavigation && createElement(Button, {
|
|
164
172
|
variant: "tertiary",
|
|
165
173
|
onClick: onCreateEmptyMenu
|
|
166
174
|
}, __('Start empty'))))));
|