@wordpress/block-library 6.1.0 → 7.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +10 -0
- package/README.md +7 -1
- package/build/audio/edit.js +1 -1
- package/build/audio/edit.js.map +1 -1
- package/build/button/index.js +5 -1
- package/build/button/index.js.map +1 -1
- package/build/calendar/index.js +4 -1
- package/build/calendar/index.js.map +1 -1
- package/build/calendar/transforms.js +27 -0
- package/build/calendar/transforms.js.map +1 -0
- package/build/code/index.js +5 -1
- package/build/code/index.js.map +1 -1
- package/build/code/transforms.js +1 -1
- package/build/code/transforms.js.map +1 -1
- package/build/column/index.js +5 -1
- package/build/column/index.js.map +1 -1
- package/build/columns/index.js +5 -1
- package/build/columns/index.js.map +1 -1
- package/build/comment-author-avatar/index.js +4 -1
- package/build/comment-author-avatar/index.js.map +1 -1
- package/build/comment-author-name/index.js +6 -1
- package/build/comment-author-name/index.js.map +1 -1
- package/build/comment-content/index.js +5 -1
- package/build/comment-content/index.js.map +1 -1
- package/build/comment-date/index.js +6 -1
- package/build/comment-date/index.js.map +1 -1
- package/build/comment-edit-link/index.js +5 -1
- package/build/comment-edit-link/index.js.map +1 -1
- package/build/comment-reply-link/index.js +5 -1
- package/build/comment-reply-link/index.js.map +1 -1
- package/build/comment-template/edit.js +49 -11
- package/build/comment-template/edit.js.map +1 -1
- package/build/comments-pagination/index.js +6 -1
- package/build/comments-pagination/index.js.map +1 -1
- package/build/comments-pagination-next/index.js +4 -1
- package/build/comments-pagination-next/index.js.map +1 -1
- package/build/comments-pagination-previous/index.js +4 -1
- package/build/comments-pagination-previous/index.js.map +1 -1
- package/build/comments-query-loop/index.js +6 -1
- package/build/comments-query-loop/index.js.map +1 -1
- package/build/cover/deprecated.js +181 -15
- package/build/cover/deprecated.js.map +1 -1
- package/build/cover/edit.js +7 -4
- package/build/cover/edit.js.map +1 -1
- package/build/cover/save.js +8 -3
- package/build/cover/save.js.map +1 -1
- package/build/gallery/constants.js +5 -1
- package/build/gallery/constants.js.map +1 -1
- package/build/gallery/edit.js +26 -14
- package/build/gallery/edit.js.map +1 -1
- package/build/gallery/shared.js +1 -1
- package/build/gallery/shared.js.map +1 -1
- package/build/gallery/transforms.js +8 -2
- package/build/gallery/transforms.js.map +1 -1
- package/build/gallery/utils.js +4 -3
- package/build/gallery/utils.js.map +1 -1
- package/build/group/index.js +5 -1
- package/build/group/index.js.map +1 -1
- package/build/group/variations.js +18 -3
- package/build/group/variations.js.map +1 -1
- package/build/heading/index.js +5 -1
- package/build/heading/index.js.map +1 -1
- package/build/heading/transforms.js +7 -5
- package/build/heading/transforms.js.map +1 -1
- package/build/image/edit.native.js +55 -15
- package/build/image/edit.native.js.map +1 -1
- package/build/index.js +7 -3
- package/build/index.js.map +1 -1
- package/build/latest-posts/edit.js +46 -57
- package/build/latest-posts/edit.js.map +1 -1
- package/build/list/index.js +5 -1
- package/build/list/index.js.map +1 -1
- package/build/media-text/index.js +5 -1
- package/build/media-text/index.js.map +1 -1
- package/build/navigation/edit/existing-menus-options.js +62 -0
- package/build/navigation/edit/existing-menus-options.js.map +1 -0
- package/build/navigation/edit/index.js +4 -5
- package/build/navigation/edit/index.js.map +1 -1
- package/build/navigation/edit/inner-blocks.js +7 -3
- package/build/navigation/edit/inner-blocks.js.map +1 -1
- package/build/navigation/edit/navigation-menu-selector.js +25 -33
- package/build/navigation/edit/navigation-menu-selector.js.map +1 -1
- package/build/navigation/edit/overlay-menu-icon.js +0 -1
- package/build/navigation/edit/overlay-menu-icon.js.map +1 -1
- package/build/navigation/edit/placeholder/index.js +26 -71
- package/build/navigation/edit/placeholder/index.js.map +1 -1
- package/build/navigation/edit/placeholder/placeholder-preview.js +8 -12
- package/build/navigation/edit/placeholder/placeholder-preview.js.map +1 -1
- package/build/paragraph/index.js +5 -1
- package/build/paragraph/index.js.map +1 -1
- package/build/paragraph/transforms.js +5 -1
- package/build/paragraph/transforms.js.map +1 -1
- package/build/post-author/index.js +5 -1
- package/build/post-author/index.js.map +1 -1
- package/build/post-author-biography/edit.js +76 -0
- package/build/post-author-biography/edit.js.map +1 -0
- package/build/post-author-biography/index.js +68 -0
- package/build/post-author-biography/index.js.map +1 -0
- package/build/post-author-name/index.js +6 -1
- package/build/post-author-name/index.js.map +1 -1
- package/build/post-comments/index.js +5 -1
- package/build/post-comments/index.js.map +1 -1
- package/build/post-comments-count/index.js +5 -1
- package/build/post-comments-count/index.js.map +1 -1
- package/build/post-comments-form/index.js +5 -1
- package/build/post-comments-form/index.js.map +1 -1
- package/build/post-comments-link/index.js +5 -1
- package/build/post-comments-link/index.js.map +1 -1
- package/build/post-content/edit.js +9 -3
- package/build/post-content/edit.js.map +1 -1
- package/build/post-date/index.js +6 -1
- package/build/post-date/index.js.map +1 -1
- package/build/post-excerpt/index.js +6 -1
- package/build/post-excerpt/index.js.map +1 -1
- package/build/post-terms/index.js +9 -1
- package/build/post-terms/index.js.map +1 -1
- package/build/post-title/edit.js +10 -7
- package/build/post-title/edit.js.map +1 -1
- package/build/post-title/index.js +6 -1
- package/build/post-title/index.js.map +1 -1
- package/build/preformatted/index.js +5 -1
- package/build/preformatted/index.js.map +1 -1
- package/build/pullquote/index.js +5 -1
- package/build/pullquote/index.js.map +1 -1
- package/build/query/index.js +5 -1
- package/build/query/index.js.map +1 -1
- package/build/query-pagination/index.js +6 -1
- package/build/query-pagination/index.js.map +1 -1
- package/build/query-pagination-next/index.js +4 -1
- package/build/query-pagination-next/index.js.map +1 -1
- package/build/query-pagination-previous/index.js +4 -1
- package/build/query-pagination-previous/index.js.map +1 -1
- package/build/query-title/index.js +8 -1
- package/build/query-title/index.js.map +1 -1
- package/build/quote/index.js +1 -5
- package/build/quote/index.js.map +1 -1
- package/build/read-more/edit.js +55 -0
- package/build/read-more/edit.js.map +1 -0
- package/build/read-more/index.js +87 -0
- package/build/read-more/index.js.map +1 -0
- package/build/search/edit.js +1 -1
- package/build/search/edit.js.map +1 -1
- package/build/search/index.js +5 -1
- package/build/search/index.js.map +1 -1
- package/build/site-logo/edit.js +4 -8
- package/build/site-logo/edit.js.map +1 -1
- package/build/site-tagline/edit.js +7 -2
- package/build/site-tagline/edit.js.map +1 -1
- package/build/site-tagline/index.js +5 -1
- package/build/site-tagline/index.js.map +1 -1
- package/build/site-title/index.js +6 -1
- package/build/site-title/index.js.map +1 -1
- package/build/social-link/edit.js +8 -1
- package/build/social-link/edit.js.map +1 -1
- package/build/social-link/index.js +1 -1
- package/build/social-links/edit.js +7 -2
- package/build/social-links/edit.js.map +1 -1
- package/build/social-links/index.js +5 -0
- package/build/social-links/index.js.map +1 -1
- package/build/social-links/save.js +2 -0
- package/build/social-links/save.js.map +1 -1
- package/build/table/index.js +5 -1
- package/build/table/index.js.map +1 -1
- package/build/tag-cloud/index.js +12 -1
- package/build/tag-cloud/index.js.map +1 -1
- package/build/tag-cloud/transforms.js +27 -0
- package/build/tag-cloud/transforms.js.map +1 -0
- package/build/term-description/index.js +5 -1
- package/build/term-description/index.js.map +1 -1
- package/build/verse/index.js +5 -1
- package/build/verse/index.js.map +1 -1
- package/build-module/audio/edit.js +1 -1
- package/build-module/audio/edit.js.map +1 -1
- package/build-module/button/index.js +5 -1
- package/build-module/button/index.js.map +1 -1
- package/build-module/calendar/index.js +3 -1
- package/build-module/calendar/index.js.map +1 -1
- package/build-module/calendar/transforms.js +18 -0
- package/build-module/calendar/transforms.js.map +1 -0
- package/build-module/code/index.js +5 -1
- package/build-module/code/index.js.map +1 -1
- package/build-module/code/transforms.js +1 -1
- package/build-module/code/transforms.js.map +1 -1
- package/build-module/column/index.js +5 -1
- package/build-module/column/index.js.map +1 -1
- package/build-module/columns/index.js +5 -1
- package/build-module/columns/index.js.map +1 -1
- package/build-module/comment-author-avatar/index.js +4 -1
- package/build-module/comment-author-avatar/index.js.map +1 -1
- package/build-module/comment-author-name/index.js +6 -1
- package/build-module/comment-author-name/index.js.map +1 -1
- package/build-module/comment-content/index.js +5 -1
- package/build-module/comment-content/index.js.map +1 -1
- package/build-module/comment-date/index.js +6 -1
- package/build-module/comment-date/index.js.map +1 -1
- package/build-module/comment-edit-link/index.js +5 -1
- package/build-module/comment-edit-link/index.js.map +1 -1
- package/build-module/comment-reply-link/index.js +5 -1
- package/build-module/comment-reply-link/index.js.map +1 -1
- package/build-module/comment-template/edit.js +48 -13
- package/build-module/comment-template/edit.js.map +1 -1
- package/build-module/comments-pagination/index.js +6 -1
- package/build-module/comments-pagination/index.js.map +1 -1
- package/build-module/comments-pagination-next/index.js +4 -1
- package/build-module/comments-pagination-next/index.js.map +1 -1
- package/build-module/comments-pagination-previous/index.js +4 -1
- package/build-module/comments-pagination-previous/index.js.map +1 -1
- package/build-module/comments-query-loop/index.js +6 -1
- package/build-module/comments-query-loop/index.js.map +1 -1
- package/build-module/cover/deprecated.js +185 -17
- package/build-module/cover/deprecated.js.map +1 -1
- package/build-module/cover/edit.js +7 -4
- package/build-module/cover/edit.js.map +1 -1
- package/build-module/cover/save.js +8 -3
- package/build-module/cover/save.js.map +1 -1
- package/build-module/gallery/constants.js +2 -0
- package/build-module/gallery/constants.js.map +1 -1
- package/build-module/gallery/edit.js +25 -14
- package/build-module/gallery/edit.js.map +1 -1
- package/build-module/gallery/shared.js +1 -1
- package/build-module/gallery/shared.js.map +1 -1
- package/build-module/gallery/transforms.js +8 -2
- package/build-module/gallery/transforms.js.map +1 -1
- package/build-module/gallery/utils.js +5 -4
- package/build-module/gallery/utils.js.map +1 -1
- package/build-module/group/index.js +5 -1
- package/build-module/group/index.js.map +1 -1
- package/build-module/group/variations.js +18 -3
- package/build-module/group/variations.js.map +1 -1
- package/build-module/heading/index.js +5 -1
- package/build-module/heading/index.js.map +1 -1
- package/build-module/heading/transforms.js +7 -5
- package/build-module/heading/transforms.js.map +1 -1
- package/build-module/image/edit.native.js +54 -15
- package/build-module/image/edit.native.js.map +1 -1
- package/build-module/index.js +5 -3
- package/build-module/index.js.map +1 -1
- package/build-module/latest-posts/edit.js +47 -58
- package/build-module/latest-posts/edit.js.map +1 -1
- package/build-module/list/index.js +5 -1
- package/build-module/list/index.js.map +1 -1
- package/build-module/media-text/index.js +5 -1
- package/build-module/media-text/index.js.map +1 -1
- package/build-module/navigation/edit/existing-menus-options.js +53 -0
- package/build-module/navigation/edit/existing-menus-options.js.map +1 -0
- package/build-module/navigation/edit/index.js +4 -5
- package/build-module/navigation/edit/index.js.map +1 -1
- package/build-module/navigation/edit/inner-blocks.js +8 -4
- package/build-module/navigation/edit/inner-blocks.js.map +1 -1
- package/build-module/navigation/edit/navigation-menu-selector.js +26 -33
- package/build-module/navigation/edit/navigation-menu-selector.js.map +1 -1
- package/build-module/navigation/edit/overlay-menu-icon.js +0 -1
- package/build-module/navigation/edit/overlay-menu-icon.js.map +1 -1
- package/build-module/navigation/edit/placeholder/index.js +26 -71
- package/build-module/navigation/edit/placeholder/index.js.map +1 -1
- package/build-module/navigation/edit/placeholder/placeholder-preview.js +8 -13
- package/build-module/navigation/edit/placeholder/placeholder-preview.js.map +1 -1
- package/build-module/paragraph/index.js +5 -1
- package/build-module/paragraph/index.js.map +1 -1
- package/build-module/paragraph/transforms.js +5 -1
- package/build-module/paragraph/transforms.js.map +1 -1
- package/build-module/post-author/index.js +5 -1
- package/build-module/post-author/index.js.map +1 -1
- package/build-module/post-author-biography/edit.js +64 -0
- package/build-module/post-author-biography/edit.js.map +1 -0
- package/build-module/post-author-biography/index.js +59 -0
- package/build-module/post-author-biography/index.js.map +1 -0
- package/build-module/post-author-name/index.js +6 -1
- package/build-module/post-author-name/index.js.map +1 -1
- package/build-module/post-comments/index.js +5 -1
- package/build-module/post-comments/index.js.map +1 -1
- package/build-module/post-comments-count/index.js +5 -1
- package/build-module/post-comments-count/index.js.map +1 -1
- package/build-module/post-comments-form/index.js +5 -1
- package/build-module/post-comments-form/index.js.map +1 -1
- package/build-module/post-comments-link/index.js +5 -1
- package/build-module/post-comments-link/index.js.map +1 -1
- package/build-module/post-content/edit.js +6 -4
- package/build-module/post-content/edit.js.map +1 -1
- package/build-module/post-date/index.js +6 -1
- package/build-module/post-date/index.js.map +1 -1
- package/build-module/post-excerpt/index.js +6 -1
- package/build-module/post-excerpt/index.js.map +1 -1
- package/build-module/post-terms/index.js +12 -1
- package/build-module/post-terms/index.js.map +1 -1
- package/build-module/post-title/edit.js +10 -8
- package/build-module/post-title/edit.js.map +1 -1
- package/build-module/post-title/index.js +6 -1
- package/build-module/post-title/index.js.map +1 -1
- package/build-module/preformatted/index.js +5 -1
- package/build-module/preformatted/index.js.map +1 -1
- package/build-module/pullquote/index.js +5 -1
- package/build-module/pullquote/index.js.map +1 -1
- package/build-module/query/index.js +5 -1
- package/build-module/query/index.js.map +1 -1
- package/build-module/query-pagination/index.js +6 -1
- package/build-module/query-pagination/index.js.map +1 -1
- package/build-module/query-pagination-next/index.js +4 -1
- package/build-module/query-pagination-next/index.js.map +1 -1
- package/build-module/query-pagination-previous/index.js +4 -1
- package/build-module/query-pagination-previous/index.js.map +1 -1
- package/build-module/query-title/index.js +11 -1
- package/build-module/query-title/index.js.map +1 -1
- package/build-module/quote/index.js +1 -5
- package/build-module/quote/index.js.map +1 -1
- package/build-module/read-more/edit.js +41 -0
- package/build-module/read-more/edit.js.map +1 -0
- package/build-module/read-more/index.js +74 -0
- package/build-module/read-more/index.js.map +1 -0
- package/build-module/search/edit.js +1 -1
- package/build-module/search/edit.js.map +1 -1
- package/build-module/search/index.js +5 -1
- package/build-module/search/index.js.map +1 -1
- package/build-module/site-logo/edit.js +4 -8
- package/build-module/site-logo/edit.js.map +1 -1
- package/build-module/site-tagline/edit.js +6 -2
- package/build-module/site-tagline/edit.js.map +1 -1
- package/build-module/site-tagline/index.js +5 -1
- package/build-module/site-tagline/index.js.map +1 -1
- package/build-module/site-title/index.js +6 -1
- package/build-module/site-title/index.js.map +1 -1
- package/build-module/social-link/edit.js +8 -1
- package/build-module/social-link/edit.js.map +1 -1
- package/build-module/social-link/index.js +1 -1
- package/build-module/social-links/edit.js +7 -2
- package/build-module/social-links/edit.js.map +1 -1
- package/build-module/social-links/index.js +5 -0
- package/build-module/social-links/index.js.map +1 -1
- package/build-module/social-links/save.js +2 -0
- package/build-module/social-links/save.js.map +1 -1
- package/build-module/table/index.js +5 -1
- package/build-module/table/index.js.map +1 -1
- package/build-module/tag-cloud/index.js +11 -1
- package/build-module/tag-cloud/index.js.map +1 -1
- package/build-module/tag-cloud/transforms.js +18 -0
- package/build-module/tag-cloud/transforms.js.map +1 -0
- package/build-module/term-description/index.js +5 -1
- package/build-module/term-description/index.js.map +1 -1
- package/build-module/verse/index.js +5 -1
- package/build-module/verse/index.js.map +1 -1
- package/build-style/common-rtl.css +8 -0
- package/build-style/common.css +8 -0
- package/build-style/cover/style-rtl.css +115 -11
- package/build-style/cover/style.css +115 -11
- package/build-style/editor-rtl.css +77 -67
- package/build-style/editor.css +77 -67
- package/build-style/gallery/style-rtl.css +2 -1
- package/build-style/gallery/style.css +2 -1
- package/build-style/image/style-rtl.css +0 -2
- package/build-style/image/style.css +0 -2
- package/build-style/navigation/editor-rtl.css +77 -67
- package/build-style/navigation/editor.css +77 -67
- package/build-style/quote/style-rtl.css +5 -5
- package/build-style/quote/style.css +5 -5
- package/build-style/read-more/style-rtl.css +87 -0
- package/build-style/read-more/style.css +87 -0
- package/build-style/separator/style-rtl.css +0 -3
- package/build-style/separator/style.css +0 -3
- package/build-style/social-links/style-rtl.css +7 -1
- package/build-style/social-links/style.css +7 -1
- package/build-style/style-rtl.css +149 -23
- package/build-style/style.css +149 -23
- package/package.json +28 -30
- package/src/audio/edit.js +1 -1
- package/src/block/test/edit.native.js +7 -3
- package/src/button/block.json +5 -1
- package/src/buttons/test/edit.native.js +2 -2
- package/src/calendar/index.js +2 -0
- package/src/calendar/transforms.js +23 -0
- package/src/code/block.json +5 -1
- package/src/code/transforms.js +1 -1
- package/src/column/block.json +5 -1
- package/src/columns/block.json +5 -1
- package/src/comment-author-avatar/block.json +4 -1
- package/src/comment-author-name/block.json +6 -1
- package/src/comment-content/block.json +5 -1
- package/src/comment-date/block.json +6 -1
- package/src/comment-date/index.php +1 -1
- package/src/comment-edit-link/block.json +5 -1
- package/src/comment-reply-link/block.json +5 -1
- package/src/comment-template/edit.js +59 -14
- package/src/comments-pagination/block.json +6 -1
- package/src/comments-pagination-next/block.json +4 -1
- package/src/comments-pagination-previous/block.json +4 -1
- package/src/comments-query-loop/block.json +6 -1
- package/src/common.scss +9 -0
- package/src/cover/deprecated.js +211 -1
- package/src/cover/edit.js +8 -4
- package/src/cover/save.js +10 -4
- package/src/cover/style.scss +20 -2
- package/src/cover/test/__snapshots__/edit.native.js.snap +4 -4
- package/src/cover/test/edit.native.js +8 -4
- package/src/embed/test/index.native.js +6 -6
- package/src/gallery/constants.js +2 -0
- package/src/gallery/edit.js +31 -13
- package/src/gallery/shared.js +1 -1
- package/src/gallery/style.scss +4 -1
- package/src/gallery/test/__snapshots__/index.native.js.snap +7 -0
- package/src/gallery/test/index.native.js +128 -0
- package/src/gallery/transforms.js +7 -1
- package/src/gallery/utils.js +7 -3
- package/src/group/block.json +5 -1
- package/src/group/variations.js +11 -1
- package/src/heading/block.json +5 -1
- package/src/heading/transforms.js +2 -5
- package/src/image/edit.native.js +65 -15
- package/src/image/index.php +1 -1
- package/src/image/style.scss +0 -2
- package/src/image/test/edit.native.js +157 -8
- package/src/index.js +35 -31
- package/src/latest-comments/index.php +4 -4
- package/src/latest-posts/edit.js +51 -63
- package/src/latest-posts/index.php +3 -3
- package/src/list/block.json +5 -1
- package/src/media-text/block.json +5 -1
- package/src/missing/test/edit-integration.native.js +2 -2
- package/src/navigation/edit/existing-menus-options.js +70 -0
- package/src/navigation/edit/index.js +4 -3
- package/src/navigation/edit/inner-blocks.js +16 -3
- package/src/navigation/edit/navigation-menu-selector.js +38 -62
- package/src/navigation/edit/overlay-menu-icon.js +0 -1
- package/src/navigation/edit/placeholder/index.js +39 -108
- package/src/navigation/edit/placeholder/placeholder-preview.js +8 -10
- package/src/navigation/editor.scss +119 -100
- package/src/navigation/index.php +3 -3
- package/src/navigation-link/index.php +1 -1
- package/src/navigation-submenu/index.php +1 -1
- package/src/page-list/index.php +5 -5
- package/src/paragraph/block.json +5 -1
- package/src/post-author/block.json +5 -1
- package/src/post-author-biography/block.json +41 -0
- package/src/post-author-biography/edit.js +63 -0
- package/src/post-author-biography/index.js +18 -0
- package/src/post-author-biography/index.php +48 -0
- package/src/post-author-name/block.json +6 -1
- package/src/post-comments/block.json +5 -1
- package/src/post-comments-count/block.json +5 -1
- package/src/post-comments-form/block.json +5 -1
- package/src/post-comments-link/block.json +5 -1
- package/src/post-comments-link/index.php +2 -2
- package/src/post-content/edit.js +4 -4
- package/src/post-date/block.json +6 -1
- package/src/post-date/index.php +1 -1
- package/src/post-excerpt/block.json +6 -1
- package/src/post-excerpt/index.php +1 -1
- package/src/post-terms/block.json +6 -1
- package/src/post-terms/index.js +6 -0
- package/src/post-title/block.json +6 -1
- package/src/post-title/edit.js +8 -7
- package/src/post-title/index.php +1 -1
- package/src/preformatted/block.json +5 -1
- package/src/pullquote/block.json +5 -1
- package/src/query/block.json +5 -1
- package/src/query-pagination/block.json +6 -1
- package/src/query-pagination-next/block.json +4 -1
- package/src/query-pagination-next/index.php +2 -2
- package/src/query-pagination-previous/block.json +4 -1
- package/src/query-pagination-previous/index.php +2 -2
- package/src/query-title/block.json +5 -1
- package/src/query-title/index.js +6 -0
- package/src/quote/block.json +1 -2
- package/src/quote/index.js +0 -1
- package/src/quote/style.scss +3 -3
- package/src/quote/theme.scss +1 -1
- package/src/read-more/block.json +56 -0
- package/src/read-more/edit.js +50 -0
- package/src/read-more/index.js +18 -0
- package/src/read-more/index.php +45 -0
- package/src/read-more/style.scss +12 -0
- package/src/search/block.json +5 -1
- package/src/search/edit.js +2 -1
- package/src/search/index.php +5 -3
- package/src/separator/style.scss +0 -5
- package/src/site-logo/edit.js +4 -8
- package/src/site-tagline/block.json +5 -1
- package/src/site-tagline/edit.js +10 -1
- package/src/site-tagline/index.php +1 -1
- package/src/site-title/block.json +6 -1
- package/src/site-title/index.php +2 -2
- package/src/social-link/block.json +1 -0
- package/src/social-link/edit.js +14 -2
- package/src/social-link/index.php +55 -52
- package/src/social-links/block.json +5 -0
- package/src/social-links/edit.js +8 -1
- package/src/social-links/save.js +7 -1
- package/src/social-links/style.scss +8 -1
- package/src/style.scss +1 -0
- package/src/table/block.json +5 -1
- package/src/tag-cloud/block.json +4 -0
- package/src/tag-cloud/index.js +2 -0
- package/src/tag-cloud/index.php +0 -9
- package/src/tag-cloud/transforms.js +23 -0
- package/src/term-description/block.json +5 -1
- package/src/verse/block.json +5 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/block-library/src/latest-posts/edit.js"],"names":["CATEGORIES_LIST_QUERY","per_page","context","USERS_LIST_QUERY","has_published_posts","LatestPostsEdit","attributes","setAttributes","postsToShow","order","orderBy","categories","selectedAuthor","displayFeaturedImage","displayPostContentRadio","displayPostContent","displayPostDate","displayAuthor","postLayout","columns","excerptLength","featuredImageAlign","featuredImageSizeSlug","featuredImageSizeWidth","featuredImageSizeHeight","addLinkToFeaturedImage","imageSizeOptions","latestPosts","defaultImageWidth","defaultImageHeight","categoriesList","authorList","select","getEntityRecords","getMedia","getUsers","coreStore","getSettings","blockEditorStore","imageSizes","imageDimensions","catIds","length","map","cat","id","latestPostsQuery","author","orderby","value","posts","filter","slug","name","label","Array","isArray","post","featured_media","image","url","featuredImageInfo","alt","alt_text","categorySuggestions","reduce","accumulator","category","selectCategories","tokens","hasNoSuggestion","some","token","allCategories","hasPosts","inspectorControls","MIN_EXCERPT_LENGTH","MAX_EXCERPT_LENGTH","newAttrs","hasOwnProperty","width","height","undefined","Number","MAX_POSTS_COLUMNS","Math","min","blockProps","className","pin","displayPosts","slice","layoutControls","icon","list","title","onClick","isActive","grid","dateFormat","formats","date","i","titleTrimmed","excerpt","rendered","currentAuthor","find","excerptElement","document","createElement","innerHTML","textContent","innerText","imageSourceUrl","featuredImageAlt","imageClasses","renderFeaturedImage","featuredImage","maxWidth","maxHeight","needsReadMore","trim","split","raw","postExcerpt","join","link","date_gmt","content"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { get, includes, invoke, isUndefined, pickBy } from 'lodash';\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { RawHTML } from '@wordpress/element';\nimport {\n\tBaseControl,\n\tPanelBody,\n\tPlaceholder,\n\tQueryControls,\n\tRadioControl,\n\tRangeControl,\n\tSpinner,\n\tToggleControl,\n\tToolbarGroup,\n} from '@wordpress/components';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { dateI18n, format, __experimentalGetSettings } from '@wordpress/date';\nimport {\n\tInspectorControls,\n\tBlockAlignmentToolbar,\n\tBlockControls,\n\t__experimentalImageSizeControl as ImageSizeControl,\n\tuseBlockProps,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { useSelect } from '@wordpress/data';\nimport { pin, list, grid } from '@wordpress/icons';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport {\n\tMIN_EXCERPT_LENGTH,\n\tMAX_EXCERPT_LENGTH,\n\tMAX_POSTS_COLUMNS,\n} from './constants';\n\n/**\n * Module Constants\n */\nconst CATEGORIES_LIST_QUERY = {\n\tper_page: -1,\n\tcontext: 'view',\n};\nconst USERS_LIST_QUERY = {\n\tper_page: -1,\n\thas_published_posts: [ 'post' ],\n\tcontext: 'view',\n};\n\nexport default function LatestPostsEdit( { attributes, setAttributes } ) {\n\tconst {\n\t\tpostsToShow,\n\t\torder,\n\t\torderBy,\n\t\tcategories,\n\t\tselectedAuthor,\n\t\tdisplayFeaturedImage,\n\t\tdisplayPostContentRadio,\n\t\tdisplayPostContent,\n\t\tdisplayPostDate,\n\t\tdisplayAuthor,\n\t\tpostLayout,\n\t\tcolumns,\n\t\texcerptLength,\n\t\tfeaturedImageAlign,\n\t\tfeaturedImageSizeSlug,\n\t\tfeaturedImageSizeWidth,\n\t\tfeaturedImageSizeHeight,\n\t\taddLinkToFeaturedImage,\n\t} = attributes;\n\tconst {\n\t\timageSizeOptions,\n\t\tlatestPosts,\n\t\tdefaultImageWidth,\n\t\tdefaultImageHeight,\n\t\tcategoriesList,\n\t\tauthorList,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getEntityRecords, getMedia, getUsers } = select(\n\t\t\t\tcoreStore\n\t\t\t);\n\t\t\tconst { getSettings } = select( blockEditorStore );\n\t\t\tconst { imageSizes, imageDimensions } = getSettings();\n\t\t\tconst catIds =\n\t\t\t\tcategories && categories.length > 0\n\t\t\t\t\t? categories.map( ( cat ) => cat.id )\n\t\t\t\t\t: [];\n\t\t\tconst latestPostsQuery = pickBy(\n\t\t\t\t{\n\t\t\t\t\tcategories: catIds,\n\t\t\t\t\tauthor: selectedAuthor,\n\t\t\t\t\torder,\n\t\t\t\t\torderby: orderBy,\n\t\t\t\t\tper_page: postsToShow,\n\t\t\t\t},\n\t\t\t\t( value ) => ! isUndefined( value )\n\t\t\t);\n\n\t\t\tconst posts = getEntityRecords(\n\t\t\t\t'postType',\n\t\t\t\t'post',\n\t\t\t\tlatestPostsQuery\n\t\t\t);\n\n\t\t\treturn {\n\t\t\t\tdefaultImageWidth: get(\n\t\t\t\t\timageDimensions,\n\t\t\t\t\t[ featuredImageSizeSlug, 'width' ],\n\t\t\t\t\t0\n\t\t\t\t),\n\t\t\t\tdefaultImageHeight: get(\n\t\t\t\t\timageDimensions,\n\t\t\t\t\t[ featuredImageSizeSlug, 'height' ],\n\t\t\t\t\t0\n\t\t\t\t),\n\t\t\t\timageSizeOptions: imageSizes\n\t\t\t\t\t.filter( ( { slug } ) => slug !== 'full' )\n\t\t\t\t\t.map( ( { name, slug } ) => ( {\n\t\t\t\t\t\tvalue: slug,\n\t\t\t\t\t\tlabel: name,\n\t\t\t\t\t} ) ),\n\t\t\t\tlatestPosts: ! Array.isArray( posts )\n\t\t\t\t\t? posts\n\t\t\t\t\t: posts.map( ( post ) => {\n\t\t\t\t\t\t\tif ( ! post.featured_media ) return post;\n\n\t\t\t\t\t\t\tconst image = getMedia( post.featured_media );\n\t\t\t\t\t\t\tlet url = get(\n\t\t\t\t\t\t\t\timage,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t'media_details',\n\t\t\t\t\t\t\t\t\t'sizes',\n\t\t\t\t\t\t\t\t\tfeaturedImageSizeSlug,\n\t\t\t\t\t\t\t\t\t'source_url',\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\tnull\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\tif ( ! url ) {\n\t\t\t\t\t\t\t\turl = get( image, 'source_url', null );\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tconst featuredImageInfo = {\n\t\t\t\t\t\t\t\turl,\n\t\t\t\t\t\t\t\t// eslint-disable-next-line camelcase\n\t\t\t\t\t\t\t\talt: image?.alt_text,\n\t\t\t\t\t\t\t};\n\t\t\t\t\t\t\treturn { ...post, featuredImageInfo };\n\t\t\t\t\t } ),\n\t\t\t\tcategoriesList: getEntityRecords(\n\t\t\t\t\t'taxonomy',\n\t\t\t\t\t'category',\n\t\t\t\t\tCATEGORIES_LIST_QUERY\n\t\t\t\t),\n\t\t\t\tauthorList: getUsers( USERS_LIST_QUERY ),\n\t\t\t};\n\t\t},\n\t\t[\n\t\t\tfeaturedImageSizeSlug,\n\t\t\tpostsToShow,\n\t\t\torder,\n\t\t\torderBy,\n\t\t\tcategories,\n\t\t\tselectedAuthor,\n\t\t]\n\t);\n\tconst categorySuggestions =\n\t\tcategoriesList?.reduce(\n\t\t\t( accumulator, category ) => ( {\n\t\t\t\t...accumulator,\n\t\t\t\t[ category.name ]: category,\n\t\t\t} ),\n\t\t\t{}\n\t\t) ?? {};\n\tconst selectCategories = ( tokens ) => {\n\t\tconst hasNoSuggestion = tokens.some(\n\t\t\t( token ) =>\n\t\t\t\ttypeof token === 'string' && ! categorySuggestions[ token ]\n\t\t);\n\t\tif ( hasNoSuggestion ) {\n\t\t\treturn;\n\t\t}\n\t\t// Categories that are already will be objects, while new additions will be strings (the name).\n\t\t// allCategories nomalizes the array so that they are all objects.\n\t\tconst allCategories = tokens.map( ( token ) => {\n\t\t\treturn typeof token === 'string'\n\t\t\t\t? categorySuggestions[ token ]\n\t\t\t\t: token;\n\t\t} );\n\t\t// We do nothing if the category is not selected\n\t\t// from suggestions.\n\t\tif ( includes( allCategories, null ) ) {\n\t\t\treturn false;\n\t\t}\n\t\tsetAttributes( { categories: allCategories } );\n\t};\n\n\tconst hasPosts = !! latestPosts?.length;\n\tconst inspectorControls = (\n\t\t<InspectorControls>\n\t\t\t<PanelBody title={ __( 'Post content settings' ) }>\n\t\t\t\t<ToggleControl\n\t\t\t\t\tlabel={ __( 'Post content' ) }\n\t\t\t\t\tchecked={ displayPostContent }\n\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { displayPostContent: value } )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t\t{ displayPostContent && (\n\t\t\t\t\t<RadioControl\n\t\t\t\t\t\tlabel={ __( 'Show:' ) }\n\t\t\t\t\t\tselected={ displayPostContentRadio }\n\t\t\t\t\t\toptions={ [\n\t\t\t\t\t\t\t{ label: __( 'Excerpt' ), value: 'excerpt' },\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tlabel: __( 'Full post' ),\n\t\t\t\t\t\t\t\tvalue: 'full_post',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t] }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tdisplayPostContentRadio: value,\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t{ displayPostContent &&\n\t\t\t\t\tdisplayPostContentRadio === 'excerpt' && (\n\t\t\t\t\t\t<RangeControl\n\t\t\t\t\t\t\tlabel={ __( 'Max number of words in excerpt' ) }\n\t\t\t\t\t\t\tvalue={ excerptLength }\n\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\tsetAttributes( { excerptLength: value } )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tmin={ MIN_EXCERPT_LENGTH }\n\t\t\t\t\t\t\tmax={ MAX_EXCERPT_LENGTH }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t</PanelBody>\n\n\t\t\t<PanelBody title={ __( 'Post meta settings' ) }>\n\t\t\t\t<ToggleControl\n\t\t\t\t\tlabel={ __( 'Display author name' ) }\n\t\t\t\t\tchecked={ displayAuthor }\n\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { displayAuthor: value } )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t\t<ToggleControl\n\t\t\t\t\tlabel={ __( 'Display post date' ) }\n\t\t\t\t\tchecked={ displayPostDate }\n\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { displayPostDate: value } )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t</PanelBody>\n\n\t\t\t<PanelBody title={ __( 'Featured image settings' ) }>\n\t\t\t\t<ToggleControl\n\t\t\t\t\tlabel={ __( 'Display featured image' ) }\n\t\t\t\t\tchecked={ displayFeaturedImage }\n\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { displayFeaturedImage: value } )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t\t{ displayFeaturedImage && (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<ImageSizeControl\n\t\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\t\tconst newAttrs = {};\n\t\t\t\t\t\t\t\tif ( value.hasOwnProperty( 'width' ) ) {\n\t\t\t\t\t\t\t\t\tnewAttrs.featuredImageSizeWidth =\n\t\t\t\t\t\t\t\t\t\tvalue.width;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tif ( value.hasOwnProperty( 'height' ) ) {\n\t\t\t\t\t\t\t\t\tnewAttrs.featuredImageSizeHeight =\n\t\t\t\t\t\t\t\t\t\tvalue.height;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tsetAttributes( newAttrs );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tslug={ featuredImageSizeSlug }\n\t\t\t\t\t\t\twidth={ featuredImageSizeWidth }\n\t\t\t\t\t\t\theight={ featuredImageSizeHeight }\n\t\t\t\t\t\t\timageWidth={ defaultImageWidth }\n\t\t\t\t\t\t\timageHeight={ defaultImageHeight }\n\t\t\t\t\t\t\timageSizeOptions={ imageSizeOptions }\n\t\t\t\t\t\t\tonChangeImage={ ( value ) =>\n\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\tfeaturedImageSizeSlug: value,\n\t\t\t\t\t\t\t\t\tfeaturedImageSizeWidth: undefined,\n\t\t\t\t\t\t\t\t\tfeaturedImageSizeHeight: undefined,\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<BaseControl className=\"editor-latest-posts-image-alignment-control\">\n\t\t\t\t\t\t\t<BaseControl.VisualLabel>\n\t\t\t\t\t\t\t\t{ __( 'Image alignment' ) }\n\t\t\t\t\t\t\t</BaseControl.VisualLabel>\n\t\t\t\t\t\t\t<BlockAlignmentToolbar\n\t\t\t\t\t\t\t\tvalue={ featuredImageAlign }\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\tfeaturedImageAlign: 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\tcontrols={ [ 'left', 'center', 'right' ] }\n\t\t\t\t\t\t\t\tisCollapsed={ false }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</BaseControl>\n\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\tlabel={ __( 'Add link to featured image' ) }\n\t\t\t\t\t\t\tchecked={ addLinkToFeaturedImage }\n\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\taddLinkToFeaturedImage: value,\n\t\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</>\n\t\t\t\t) }\n\t\t\t</PanelBody>\n\n\t\t\t<PanelBody title={ __( 'Sorting and filtering' ) }>\n\t\t\t\t<QueryControls\n\t\t\t\t\t{ ...{ order, orderBy } }\n\t\t\t\t\tnumberOfItems={ postsToShow }\n\t\t\t\t\tonOrderChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { order: value } )\n\t\t\t\t\t}\n\t\t\t\t\tonOrderByChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { orderBy: value } )\n\t\t\t\t\t}\n\t\t\t\t\tonNumberOfItemsChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { postsToShow: value } )\n\t\t\t\t\t}\n\t\t\t\t\tcategorySuggestions={ categorySuggestions }\n\t\t\t\t\tonCategoryChange={ selectCategories }\n\t\t\t\t\tselectedCategories={ categories }\n\t\t\t\t\tonAuthorChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\tselectedAuthor:\n\t\t\t\t\t\t\t\t'' !== value ? Number( value ) : undefined,\n\t\t\t\t\t\t} )\n\t\t\t\t\t}\n\t\t\t\t\tauthorList={ authorList ?? [] }\n\t\t\t\t\tselectedAuthorId={ selectedAuthor }\n\t\t\t\t/>\n\n\t\t\t\t{ postLayout === 'grid' && (\n\t\t\t\t\t<RangeControl\n\t\t\t\t\t\tlabel={ __( 'Columns' ) }\n\t\t\t\t\t\tvalue={ columns }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tsetAttributes( { columns: value } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tmin={ 2 }\n\t\t\t\t\t\tmax={\n\t\t\t\t\t\t\t! hasPosts\n\t\t\t\t\t\t\t\t? MAX_POSTS_COLUMNS\n\t\t\t\t\t\t\t\t: Math.min(\n\t\t\t\t\t\t\t\t\t\tMAX_POSTS_COLUMNS,\n\t\t\t\t\t\t\t\t\t\tlatestPosts.length\n\t\t\t\t\t\t\t\t )\n\t\t\t\t\t\t}\n\t\t\t\t\t\trequired\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</PanelBody>\n\t\t</InspectorControls>\n\t);\n\n\tconst blockProps = useBlockProps( {\n\t\tclassName: classnames( {\n\t\t\t'wp-block-latest-posts__list': true,\n\t\t\t'is-grid': postLayout === 'grid',\n\t\t\t'has-dates': displayPostDate,\n\t\t\t'has-author': displayAuthor,\n\t\t\t[ `columns-${ columns }` ]: postLayout === 'grid',\n\t\t} ),\n\t} );\n\n\tif ( ! hasPosts ) {\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t{ inspectorControls }\n\t\t\t\t<Placeholder icon={ pin } label={ __( 'Latest Posts' ) }>\n\t\t\t\t\t{ ! Array.isArray( latestPosts ) ? (\n\t\t\t\t\t\t<Spinner />\n\t\t\t\t\t) : (\n\t\t\t\t\t\t__( 'No posts found.' )\n\t\t\t\t\t) }\n\t\t\t\t</Placeholder>\n\t\t\t</div>\n\t\t);\n\t}\n\n\t// Removing posts from display should be instant.\n\tconst displayPosts =\n\t\tlatestPosts.length > postsToShow\n\t\t\t? latestPosts.slice( 0, postsToShow )\n\t\t\t: latestPosts;\n\n\tconst layoutControls = [\n\t\t{\n\t\t\ticon: list,\n\t\t\ttitle: __( 'List view' ),\n\t\t\tonClick: () => setAttributes( { postLayout: 'list' } ),\n\t\t\tisActive: postLayout === 'list',\n\t\t},\n\t\t{\n\t\t\ticon: grid,\n\t\t\ttitle: __( 'Grid view' ),\n\t\t\tonClick: () => setAttributes( { postLayout: 'grid' } ),\n\t\t\tisActive: postLayout === 'grid',\n\t\t},\n\t];\n\n\tconst dateFormat = __experimentalGetSettings().formats.date;\n\n\treturn (\n\t\t<div>\n\t\t\t{ inspectorControls }\n\t\t\t<BlockControls>\n\t\t\t\t<ToolbarGroup controls={ layoutControls } />\n\t\t\t</BlockControls>\n\t\t\t<ul { ...blockProps }>\n\t\t\t\t{ displayPosts.map( ( post, i ) => {\n\t\t\t\t\tconst titleTrimmed = invoke( post, [\n\t\t\t\t\t\t'title',\n\t\t\t\t\t\t'rendered',\n\t\t\t\t\t\t'trim',\n\t\t\t\t\t] );\n\t\t\t\t\tlet excerpt = post.excerpt.rendered;\n\t\t\t\t\tconst currentAuthor = authorList?.find(\n\t\t\t\t\t\t( author ) => author.id === post.author\n\t\t\t\t\t);\n\n\t\t\t\t\tconst excerptElement = document.createElement( 'div' );\n\t\t\t\t\texcerptElement.innerHTML = excerpt;\n\n\t\t\t\t\texcerpt =\n\t\t\t\t\t\texcerptElement.textContent ||\n\t\t\t\t\t\texcerptElement.innerText ||\n\t\t\t\t\t\t'';\n\n\t\t\t\t\tconst {\n\t\t\t\t\t\tfeaturedImageInfo: {\n\t\t\t\t\t\t\turl: imageSourceUrl,\n\t\t\t\t\t\t\talt: featuredImageAlt,\n\t\t\t\t\t\t} = {},\n\t\t\t\t\t} = post;\n\t\t\t\t\tconst imageClasses = classnames( {\n\t\t\t\t\t\t'wp-block-latest-posts__featured-image': true,\n\t\t\t\t\t\t[ `align${ featuredImageAlign }` ]: !! featuredImageAlign,\n\t\t\t\t\t} );\n\t\t\t\t\tconst renderFeaturedImage =\n\t\t\t\t\t\tdisplayFeaturedImage && imageSourceUrl;\n\t\t\t\t\tconst featuredImage = renderFeaturedImage && (\n\t\t\t\t\t\t<img\n\t\t\t\t\t\t\tsrc={ imageSourceUrl }\n\t\t\t\t\t\t\talt={ featuredImageAlt }\n\t\t\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t\t\tmaxWidth: featuredImageSizeWidth,\n\t\t\t\t\t\t\t\tmaxHeight: featuredImageSizeHeight,\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t/>\n\t\t\t\t\t);\n\n\t\t\t\t\tconst needsReadMore =\n\t\t\t\t\t\texcerptLength < excerpt.trim().split( ' ' ).length &&\n\t\t\t\t\t\tpost.excerpt.raw === '';\n\n\t\t\t\t\tconst postExcerpt = needsReadMore ? (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t{ excerpt\n\t\t\t\t\t\t\t\t.trim()\n\t\t\t\t\t\t\t\t.split( ' ', excerptLength )\n\t\t\t\t\t\t\t\t.join( ' ' ) }\n\t\t\t\t\t\t\t{ /* translators: excerpt truncation character, default … */ }\n\t\t\t\t\t\t\t{ __( ' … ' ) }\n\t\t\t\t\t\t\t<a href={ post.link } rel=\"noopener noreferrer\">\n\t\t\t\t\t\t\t\t{ __( 'Read more' ) }\n\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t</>\n\t\t\t\t\t) : (\n\t\t\t\t\t\texcerpt\n\t\t\t\t\t);\n\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<li key={ i }>\n\t\t\t\t\t\t\t{ renderFeaturedImage && (\n\t\t\t\t\t\t\t\t<div className={ imageClasses }>\n\t\t\t\t\t\t\t\t\t{ addLinkToFeaturedImage ? (\n\t\t\t\t\t\t\t\t\t\t<a\n\t\t\t\t\t\t\t\t\t\t\thref={ post.link }\n\t\t\t\t\t\t\t\t\t\t\trel=\"noreferrer noopener\"\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{ featuredImage }\n\t\t\t\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\tfeaturedImage\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t<a href={ post.link } rel=\"noreferrer noopener\">\n\t\t\t\t\t\t\t\t{ titleTrimmed ? (\n\t\t\t\t\t\t\t\t\t<RawHTML>{ titleTrimmed }</RawHTML>\n\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t__( '(no title)' )\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t\t{ displayAuthor && currentAuthor && (\n\t\t\t\t\t\t\t\t<div className=\"wp-block-latest-posts__post-author\">\n\t\t\t\t\t\t\t\t\t{ sprintf(\n\t\t\t\t\t\t\t\t\t\t/* translators: byline. %s: current author. */\n\t\t\t\t\t\t\t\t\t\t__( 'by %s' ),\n\t\t\t\t\t\t\t\t\t\tcurrentAuthor.name\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t{ displayPostDate && post.date_gmt && (\n\t\t\t\t\t\t\t\t<time\n\t\t\t\t\t\t\t\t\tdateTime={ format( 'c', post.date_gmt ) }\n\t\t\t\t\t\t\t\t\tclassName=\"wp-block-latest-posts__post-date\"\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ dateI18n( dateFormat, post.date_gmt ) }\n\t\t\t\t\t\t\t\t</time>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t{ displayPostContent &&\n\t\t\t\t\t\t\t\tdisplayPostContentRadio === 'excerpt' && (\n\t\t\t\t\t\t\t\t\t<div className=\"wp-block-latest-posts__post-excerpt\">\n\t\t\t\t\t\t\t\t\t\t{ postExcerpt }\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t{ displayPostContent &&\n\t\t\t\t\t\t\t\tdisplayPostContentRadio === 'full_post' && (\n\t\t\t\t\t\t\t\t\t<div className=\"wp-block-latest-posts__post-full-content\">\n\t\t\t\t\t\t\t\t\t\t<RawHTML key=\"html\">\n\t\t\t\t\t\t\t\t\t\t\t{ post.content.raw.trim() }\n\t\t\t\t\t\t\t\t\t\t</RawHTML>\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</li>\n\t\t\t\t\t);\n\t\t\t\t} ) }\n\t\t\t</ul>\n\t\t</div>\n\t);\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/latest-posts/edit.js"],"names":["CATEGORIES_LIST_QUERY","per_page","context","USERS_LIST_QUERY","has_published_posts","getFeaturedImageDetails","post","size","image","url","media_details","sizes","source_url","alt","alt_text","LatestPostsEdit","attributes","setAttributes","postsToShow","order","orderBy","categories","selectedAuthor","displayFeaturedImage","displayPostContentRadio","displayPostContent","displayPostDate","displayAuthor","postLayout","columns","excerptLength","featuredImageAlign","featuredImageSizeSlug","featuredImageSizeWidth","featuredImageSizeHeight","addLinkToFeaturedImage","imageSizes","latestPosts","defaultImageWidth","defaultImageHeight","categoriesList","authorList","select","getEntityRecords","getUsers","coreStore","settings","blockEditorStore","getSettings","catIds","length","map","cat","id","latestPostsQuery","author","orderby","_embed","value","imageDimensions","imageSizeOptions","filter","slug","name","label","categorySuggestions","reduce","accumulator","category","selectCategories","tokens","hasNoSuggestion","some","token","allCategories","hasPosts","inspectorControls","MIN_EXCERPT_LENGTH","MAX_EXCERPT_LENGTH","newAttrs","hasOwnProperty","width","height","undefined","Number","MAX_POSTS_COLUMNS","Math","min","blockProps","className","pin","Array","isArray","displayPosts","slice","layoutControls","icon","list","title","onClick","isActive","grid","dateFormat","formats","date","i","titleTrimmed","excerpt","rendered","currentAuthor","find","excerptElement","document","createElement","innerHTML","textContent","innerText","imageSourceUrl","featuredImageAlt","imageClasses","renderFeaturedImage","featuredImage","maxWidth","maxHeight","needsReadMore","trim","split","raw","postExcerpt","join","link","__html","date_gmt","content"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { get, includes, invoke, isUndefined, pickBy } from 'lodash';\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tBaseControl,\n\tPanelBody,\n\tPlaceholder,\n\tQueryControls,\n\tRadioControl,\n\tRangeControl,\n\tSpinner,\n\tToggleControl,\n\tToolbarGroup,\n} from '@wordpress/components';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { dateI18n, format, __experimentalGetSettings } from '@wordpress/date';\nimport {\n\tInspectorControls,\n\tBlockAlignmentToolbar,\n\tBlockControls,\n\t__experimentalImageSizeControl as ImageSizeControl,\n\tuseBlockProps,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { useSelect } from '@wordpress/data';\nimport { pin, list, grid } from '@wordpress/icons';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport {\n\tMIN_EXCERPT_LENGTH,\n\tMAX_EXCERPT_LENGTH,\n\tMAX_POSTS_COLUMNS,\n} from './constants';\n\n/**\n * Module Constants\n */\nconst CATEGORIES_LIST_QUERY = {\n\tper_page: -1,\n\tcontext: 'view',\n};\nconst USERS_LIST_QUERY = {\n\tper_page: -1,\n\thas_published_posts: [ 'post' ],\n\tcontext: 'view',\n};\n\nfunction getFeaturedImageDetails( post, size ) {\n\tconst image = get( post, [ '_embedded', 'wp:featuredmedia', '0' ] );\n\n\treturn {\n\t\turl:\n\t\t\timage?.media_details?.sizes?.[ size ]?.source_url ??\n\t\t\timage?.source_url,\n\t\talt: image?.alt_text,\n\t};\n}\n\nexport default function LatestPostsEdit( { attributes, setAttributes } ) {\n\tconst {\n\t\tpostsToShow,\n\t\torder,\n\t\torderBy,\n\t\tcategories,\n\t\tselectedAuthor,\n\t\tdisplayFeaturedImage,\n\t\tdisplayPostContentRadio,\n\t\tdisplayPostContent,\n\t\tdisplayPostDate,\n\t\tdisplayAuthor,\n\t\tpostLayout,\n\t\tcolumns,\n\t\texcerptLength,\n\t\tfeaturedImageAlign,\n\t\tfeaturedImageSizeSlug,\n\t\tfeaturedImageSizeWidth,\n\t\tfeaturedImageSizeHeight,\n\t\taddLinkToFeaturedImage,\n\t} = attributes;\n\tconst {\n\t\timageSizes,\n\t\tlatestPosts,\n\t\tdefaultImageWidth,\n\t\tdefaultImageHeight,\n\t\tcategoriesList,\n\t\tauthorList,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getEntityRecords, getUsers } = select( coreStore );\n\t\t\tconst settings = select( blockEditorStore ).getSettings();\n\t\t\tconst catIds =\n\t\t\t\tcategories && categories.length > 0\n\t\t\t\t\t? categories.map( ( cat ) => cat.id )\n\t\t\t\t\t: [];\n\t\t\tconst latestPostsQuery = pickBy(\n\t\t\t\t{\n\t\t\t\t\tcategories: catIds,\n\t\t\t\t\tauthor: selectedAuthor,\n\t\t\t\t\torder,\n\t\t\t\t\torderby: orderBy,\n\t\t\t\t\tper_page: postsToShow,\n\t\t\t\t\t_embed: 'wp:featuredmedia',\n\t\t\t\t},\n\t\t\t\t( value ) => ! isUndefined( value )\n\t\t\t);\n\n\t\t\treturn {\n\t\t\t\tdefaultImageWidth: get(\n\t\t\t\t\tsettings.imageDimensions,\n\t\t\t\t\t[ featuredImageSizeSlug, 'width' ],\n\t\t\t\t\t0\n\t\t\t\t),\n\t\t\t\tdefaultImageHeight: get(\n\t\t\t\t\tsettings.imageDimensions,\n\t\t\t\t\t[ featuredImageSizeSlug, 'height' ],\n\t\t\t\t\t0\n\t\t\t\t),\n\t\t\t\timageSizes: settings.imageSizes,\n\t\t\t\tlatestPosts: getEntityRecords(\n\t\t\t\t\t'postType',\n\t\t\t\t\t'post',\n\t\t\t\t\tlatestPostsQuery\n\t\t\t\t),\n\t\t\t\tcategoriesList: getEntityRecords(\n\t\t\t\t\t'taxonomy',\n\t\t\t\t\t'category',\n\t\t\t\t\tCATEGORIES_LIST_QUERY\n\t\t\t\t),\n\t\t\t\tauthorList: getUsers( USERS_LIST_QUERY ),\n\t\t\t};\n\t\t},\n\t\t[\n\t\t\tfeaturedImageSizeSlug,\n\t\t\tpostsToShow,\n\t\t\torder,\n\t\t\torderBy,\n\t\t\tcategories,\n\t\t\tselectedAuthor,\n\t\t]\n\t);\n\n\tconst imageSizeOptions = imageSizes\n\t\t.filter( ( { slug } ) => slug !== 'full' )\n\t\t.map( ( { name, slug } ) => ( {\n\t\t\tvalue: slug,\n\t\t\tlabel: name,\n\t\t} ) );\n\tconst categorySuggestions =\n\t\tcategoriesList?.reduce(\n\t\t\t( accumulator, category ) => ( {\n\t\t\t\t...accumulator,\n\t\t\t\t[ category.name ]: category,\n\t\t\t} ),\n\t\t\t{}\n\t\t) ?? {};\n\tconst selectCategories = ( tokens ) => {\n\t\tconst hasNoSuggestion = tokens.some(\n\t\t\t( token ) =>\n\t\t\t\ttypeof token === 'string' && ! categorySuggestions[ token ]\n\t\t);\n\t\tif ( hasNoSuggestion ) {\n\t\t\treturn;\n\t\t}\n\t\t// Categories that are already will be objects, while new additions will be strings (the name).\n\t\t// allCategories nomalizes the array so that they are all objects.\n\t\tconst allCategories = tokens.map( ( token ) => {\n\t\t\treturn typeof token === 'string'\n\t\t\t\t? categorySuggestions[ token ]\n\t\t\t\t: token;\n\t\t} );\n\t\t// We do nothing if the category is not selected\n\t\t// from suggestions.\n\t\tif ( includes( allCategories, null ) ) {\n\t\t\treturn false;\n\t\t}\n\t\tsetAttributes( { categories: allCategories } );\n\t};\n\n\tconst hasPosts = !! latestPosts?.length;\n\tconst inspectorControls = (\n\t\t<InspectorControls>\n\t\t\t<PanelBody title={ __( 'Post content settings' ) }>\n\t\t\t\t<ToggleControl\n\t\t\t\t\tlabel={ __( 'Post content' ) }\n\t\t\t\t\tchecked={ displayPostContent }\n\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { displayPostContent: value } )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t\t{ displayPostContent && (\n\t\t\t\t\t<RadioControl\n\t\t\t\t\t\tlabel={ __( 'Show:' ) }\n\t\t\t\t\t\tselected={ displayPostContentRadio }\n\t\t\t\t\t\toptions={ [\n\t\t\t\t\t\t\t{ label: __( 'Excerpt' ), value: 'excerpt' },\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tlabel: __( 'Full post' ),\n\t\t\t\t\t\t\t\tvalue: 'full_post',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t] }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tdisplayPostContentRadio: value,\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t{ displayPostContent &&\n\t\t\t\t\tdisplayPostContentRadio === 'excerpt' && (\n\t\t\t\t\t\t<RangeControl\n\t\t\t\t\t\t\tlabel={ __( 'Max number of words in excerpt' ) }\n\t\t\t\t\t\t\tvalue={ excerptLength }\n\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\tsetAttributes( { excerptLength: value } )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tmin={ MIN_EXCERPT_LENGTH }\n\t\t\t\t\t\t\tmax={ MAX_EXCERPT_LENGTH }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t</PanelBody>\n\n\t\t\t<PanelBody title={ __( 'Post meta settings' ) }>\n\t\t\t\t<ToggleControl\n\t\t\t\t\tlabel={ __( 'Display author name' ) }\n\t\t\t\t\tchecked={ displayAuthor }\n\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { displayAuthor: value } )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t\t<ToggleControl\n\t\t\t\t\tlabel={ __( 'Display post date' ) }\n\t\t\t\t\tchecked={ displayPostDate }\n\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { displayPostDate: value } )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t</PanelBody>\n\n\t\t\t<PanelBody title={ __( 'Featured image settings' ) }>\n\t\t\t\t<ToggleControl\n\t\t\t\t\tlabel={ __( 'Display featured image' ) }\n\t\t\t\t\tchecked={ displayFeaturedImage }\n\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { displayFeaturedImage: value } )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t\t{ displayFeaturedImage && (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<ImageSizeControl\n\t\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\t\tconst newAttrs = {};\n\t\t\t\t\t\t\t\tif ( value.hasOwnProperty( 'width' ) ) {\n\t\t\t\t\t\t\t\t\tnewAttrs.featuredImageSizeWidth =\n\t\t\t\t\t\t\t\t\t\tvalue.width;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tif ( value.hasOwnProperty( 'height' ) ) {\n\t\t\t\t\t\t\t\t\tnewAttrs.featuredImageSizeHeight =\n\t\t\t\t\t\t\t\t\t\tvalue.height;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tsetAttributes( newAttrs );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tslug={ featuredImageSizeSlug }\n\t\t\t\t\t\t\twidth={ featuredImageSizeWidth }\n\t\t\t\t\t\t\theight={ featuredImageSizeHeight }\n\t\t\t\t\t\t\timageWidth={ defaultImageWidth }\n\t\t\t\t\t\t\timageHeight={ defaultImageHeight }\n\t\t\t\t\t\t\timageSizeOptions={ imageSizeOptions }\n\t\t\t\t\t\t\tonChangeImage={ ( value ) =>\n\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\tfeaturedImageSizeSlug: value,\n\t\t\t\t\t\t\t\t\tfeaturedImageSizeWidth: undefined,\n\t\t\t\t\t\t\t\t\tfeaturedImageSizeHeight: undefined,\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<BaseControl className=\"editor-latest-posts-image-alignment-control\">\n\t\t\t\t\t\t\t<BaseControl.VisualLabel>\n\t\t\t\t\t\t\t\t{ __( 'Image alignment' ) }\n\t\t\t\t\t\t\t</BaseControl.VisualLabel>\n\t\t\t\t\t\t\t<BlockAlignmentToolbar\n\t\t\t\t\t\t\t\tvalue={ featuredImageAlign }\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\tfeaturedImageAlign: 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\tcontrols={ [ 'left', 'center', 'right' ] }\n\t\t\t\t\t\t\t\tisCollapsed={ false }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</BaseControl>\n\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\tlabel={ __( 'Add link to featured image' ) }\n\t\t\t\t\t\t\tchecked={ addLinkToFeaturedImage }\n\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\taddLinkToFeaturedImage: value,\n\t\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</>\n\t\t\t\t) }\n\t\t\t</PanelBody>\n\n\t\t\t<PanelBody title={ __( 'Sorting and filtering' ) }>\n\t\t\t\t<QueryControls\n\t\t\t\t\t{ ...{ order, orderBy } }\n\t\t\t\t\tnumberOfItems={ postsToShow }\n\t\t\t\t\tonOrderChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { order: value } )\n\t\t\t\t\t}\n\t\t\t\t\tonOrderByChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { orderBy: value } )\n\t\t\t\t\t}\n\t\t\t\t\tonNumberOfItemsChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { postsToShow: value } )\n\t\t\t\t\t}\n\t\t\t\t\tcategorySuggestions={ categorySuggestions }\n\t\t\t\t\tonCategoryChange={ selectCategories }\n\t\t\t\t\tselectedCategories={ categories }\n\t\t\t\t\tonAuthorChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\tselectedAuthor:\n\t\t\t\t\t\t\t\t'' !== value ? Number( value ) : undefined,\n\t\t\t\t\t\t} )\n\t\t\t\t\t}\n\t\t\t\t\tauthorList={ authorList ?? [] }\n\t\t\t\t\tselectedAuthorId={ selectedAuthor }\n\t\t\t\t/>\n\n\t\t\t\t{ postLayout === 'grid' && (\n\t\t\t\t\t<RangeControl\n\t\t\t\t\t\tlabel={ __( 'Columns' ) }\n\t\t\t\t\t\tvalue={ columns }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tsetAttributes( { columns: value } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tmin={ 2 }\n\t\t\t\t\t\tmax={\n\t\t\t\t\t\t\t! hasPosts\n\t\t\t\t\t\t\t\t? MAX_POSTS_COLUMNS\n\t\t\t\t\t\t\t\t: Math.min(\n\t\t\t\t\t\t\t\t\t\tMAX_POSTS_COLUMNS,\n\t\t\t\t\t\t\t\t\t\tlatestPosts.length\n\t\t\t\t\t\t\t\t )\n\t\t\t\t\t\t}\n\t\t\t\t\t\trequired\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</PanelBody>\n\t\t</InspectorControls>\n\t);\n\n\tconst blockProps = useBlockProps( {\n\t\tclassName: classnames( {\n\t\t\t'wp-block-latest-posts__list': true,\n\t\t\t'is-grid': postLayout === 'grid',\n\t\t\t'has-dates': displayPostDate,\n\t\t\t'has-author': displayAuthor,\n\t\t\t[ `columns-${ columns }` ]: postLayout === 'grid',\n\t\t} ),\n\t} );\n\n\tif ( ! hasPosts ) {\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t{ inspectorControls }\n\t\t\t\t<Placeholder icon={ pin } label={ __( 'Latest Posts' ) }>\n\t\t\t\t\t{ ! Array.isArray( latestPosts ) ? (\n\t\t\t\t\t\t<Spinner />\n\t\t\t\t\t) : (\n\t\t\t\t\t\t__( 'No posts found.' )\n\t\t\t\t\t) }\n\t\t\t\t</Placeholder>\n\t\t\t</div>\n\t\t);\n\t}\n\n\t// Removing posts from display should be instant.\n\tconst displayPosts =\n\t\tlatestPosts.length > postsToShow\n\t\t\t? latestPosts.slice( 0, postsToShow )\n\t\t\t: latestPosts;\n\n\tconst layoutControls = [\n\t\t{\n\t\t\ticon: list,\n\t\t\ttitle: __( 'List view' ),\n\t\t\tonClick: () => setAttributes( { postLayout: 'list' } ),\n\t\t\tisActive: postLayout === 'list',\n\t\t},\n\t\t{\n\t\t\ticon: grid,\n\t\t\ttitle: __( 'Grid view' ),\n\t\t\tonClick: () => setAttributes( { postLayout: 'grid' } ),\n\t\t\tisActive: postLayout === 'grid',\n\t\t},\n\t];\n\n\tconst dateFormat = __experimentalGetSettings().formats.date;\n\n\treturn (\n\t\t<div>\n\t\t\t{ inspectorControls }\n\t\t\t<BlockControls>\n\t\t\t\t<ToolbarGroup controls={ layoutControls } />\n\t\t\t</BlockControls>\n\t\t\t<ul { ...blockProps }>\n\t\t\t\t{ displayPosts.map( ( post, i ) => {\n\t\t\t\t\tconst titleTrimmed = invoke( post, [\n\t\t\t\t\t\t'title',\n\t\t\t\t\t\t'rendered',\n\t\t\t\t\t\t'trim',\n\t\t\t\t\t] );\n\t\t\t\t\tlet excerpt = post.excerpt.rendered;\n\t\t\t\t\tconst currentAuthor = authorList?.find(\n\t\t\t\t\t\t( author ) => author.id === post.author\n\t\t\t\t\t);\n\n\t\t\t\t\tconst excerptElement = document.createElement( 'div' );\n\t\t\t\t\texcerptElement.innerHTML = excerpt;\n\n\t\t\t\t\texcerpt =\n\t\t\t\t\t\texcerptElement.textContent ||\n\t\t\t\t\t\texcerptElement.innerText ||\n\t\t\t\t\t\t'';\n\n\t\t\t\t\tconst {\n\t\t\t\t\t\turl: imageSourceUrl,\n\t\t\t\t\t\talt: featuredImageAlt,\n\t\t\t\t\t} = getFeaturedImageDetails( post, featuredImageSizeSlug );\n\t\t\t\t\tconst imageClasses = classnames( {\n\t\t\t\t\t\t'wp-block-latest-posts__featured-image': true,\n\t\t\t\t\t\t[ `align${ featuredImageAlign }` ]: !! featuredImageAlign,\n\t\t\t\t\t} );\n\t\t\t\t\tconst renderFeaturedImage =\n\t\t\t\t\t\tdisplayFeaturedImage && imageSourceUrl;\n\t\t\t\t\tconst featuredImage = renderFeaturedImage && (\n\t\t\t\t\t\t<img\n\t\t\t\t\t\t\tsrc={ imageSourceUrl }\n\t\t\t\t\t\t\talt={ featuredImageAlt }\n\t\t\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t\t\tmaxWidth: featuredImageSizeWidth,\n\t\t\t\t\t\t\t\tmaxHeight: featuredImageSizeHeight,\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t/>\n\t\t\t\t\t);\n\n\t\t\t\t\tconst needsReadMore =\n\t\t\t\t\t\texcerptLength < excerpt.trim().split( ' ' ).length &&\n\t\t\t\t\t\tpost.excerpt.raw === '';\n\n\t\t\t\t\tconst postExcerpt = needsReadMore ? (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t{ excerpt\n\t\t\t\t\t\t\t\t.trim()\n\t\t\t\t\t\t\t\t.split( ' ', excerptLength )\n\t\t\t\t\t\t\t\t.join( ' ' ) }\n\t\t\t\t\t\t\t{ /* translators: excerpt truncation character, default … */ }\n\t\t\t\t\t\t\t{ __( ' … ' ) }\n\t\t\t\t\t\t\t<a href={ post.link } rel=\"noopener noreferrer\">\n\t\t\t\t\t\t\t\t{ __( 'Read more' ) }\n\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t</>\n\t\t\t\t\t) : (\n\t\t\t\t\t\texcerpt\n\t\t\t\t\t);\n\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<li key={ i }>\n\t\t\t\t\t\t\t{ renderFeaturedImage && (\n\t\t\t\t\t\t\t\t<div className={ imageClasses }>\n\t\t\t\t\t\t\t\t\t{ addLinkToFeaturedImage ? (\n\t\t\t\t\t\t\t\t\t\t<a\n\t\t\t\t\t\t\t\t\t\t\thref={ post.link }\n\t\t\t\t\t\t\t\t\t\t\trel=\"noreferrer noopener\"\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{ featuredImage }\n\t\t\t\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\tfeaturedImage\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t<a\n\t\t\t\t\t\t\t\thref={ post.link }\n\t\t\t\t\t\t\t\trel=\"noreferrer noopener\"\n\t\t\t\t\t\t\t\tdangerouslySetInnerHTML={\n\t\t\t\t\t\t\t\t\t!! titleTrimmed\n\t\t\t\t\t\t\t\t\t\t? {\n\t\t\t\t\t\t\t\t\t\t\t\t__html: titleTrimmed,\n\t\t\t\t\t\t\t\t\t\t }\n\t\t\t\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ ! titleTrimmed ? __( '(no title)' ) : null }\n\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t\t{ displayAuthor && currentAuthor && (\n\t\t\t\t\t\t\t\t<div className=\"wp-block-latest-posts__post-author\">\n\t\t\t\t\t\t\t\t\t{ sprintf(\n\t\t\t\t\t\t\t\t\t\t/* translators: byline. %s: current author. */\n\t\t\t\t\t\t\t\t\t\t__( 'by %s' ),\n\t\t\t\t\t\t\t\t\t\tcurrentAuthor.name\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t{ displayPostDate && post.date_gmt && (\n\t\t\t\t\t\t\t\t<time\n\t\t\t\t\t\t\t\t\tdateTime={ format( 'c', post.date_gmt ) }\n\t\t\t\t\t\t\t\t\tclassName=\"wp-block-latest-posts__post-date\"\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ dateI18n( dateFormat, post.date_gmt ) }\n\t\t\t\t\t\t\t\t</time>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t{ displayPostContent &&\n\t\t\t\t\t\t\t\tdisplayPostContentRadio === 'excerpt' && (\n\t\t\t\t\t\t\t\t\t<div className=\"wp-block-latest-posts__post-excerpt\">\n\t\t\t\t\t\t\t\t\t\t{ postExcerpt }\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t{ displayPostContent &&\n\t\t\t\t\t\t\t\tdisplayPostContentRadio === 'full_post' && (\n\t\t\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\t\t\tclassName=\"wp-block-latest-posts__post-full-content\"\n\t\t\t\t\t\t\t\t\t\tdangerouslySetInnerHTML={ {\n\t\t\t\t\t\t\t\t\t\t\t__html: post.content.raw.trim(),\n\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</li>\n\t\t\t\t\t);\n\t\t\t\t} ) }\n\t\t\t</ul>\n\t\t</div>\n\t);\n}\n"]}
|
package/build/list/index.js
CHANGED
package/build/list/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/block-library/src/list/index.js"],"names":["name","metadata","settings","icon","example","attributes","values","transforms","merge","attributesToMerge","edit","save","deprecated"],"mappings":";;;;;;;;;AAGA;;AAKA;;AACA;;AAEA;;AACA;;AAZA;AACA;AACA;;AAGA;AACA;AACA
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/list/index.js"],"names":["name","metadata","settings","icon","example","attributes","values","transforms","merge","attributesToMerge","edit","save","deprecated"],"mappings":";;;;;;;;;AAGA;;AAKA;;AACA;;AAEA;;AACA;;AAZA;AACA;AACA;;AAGA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAOA,MAAM;AAAEA,EAAAA;AAAF,IAAWC,QAAjB;;AAIO,MAAMC,QAAQ,GAAG;AACvBC,EAAAA,IAAI,EAAJA,WADuB;AAEvBC,EAAAA,OAAO,EAAE;AACRC,IAAAA,UAAU,EAAE;AACXC,MAAAA,MAAM,EACL;AAFU;AADJ,GAFc;AAQvBC,EAAAA,UAAU,EAAVA,mBARuB;;AASvBC,EAAAA,KAAK,CAAEH,UAAF,EAAcI,iBAAd,EAAkC;AACtC,UAAM;AAAEH,MAAAA;AAAF,QAAaG,iBAAnB;;AAEA,QAAK,CAAEH,MAAF,IAAYA,MAAM,KAAK,WAA5B,EAA0C;AACzC,aAAOD,UAAP;AACA;;AAED,WAAO,EACN,GAAGA,UADG;AAENC,MAAAA,MAAM,EAAED,UAAU,CAACC,MAAX,GAAoBA;AAFtB,KAAP;AAIA,GApBsB;;AAqBvBI,EAAAA,IAAI,EAAJA,aArBuB;AAsBvBC,EAAAA,IAAI,EAAJA,aAtBuB;AAuBvBC,EAAAA,UAAU,EAAVA;AAvBuB,CAAjB","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { list as icon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport deprecated from './deprecated';\nimport edit from './edit';\nimport metadata from './block.json';\nimport save from './save';\nimport transforms from './transforms';\n\nconst { name } = metadata;\n\nexport { metadata, name };\n\nexport const settings = {\n\ticon,\n\texample: {\n\t\tattributes: {\n\t\t\tvalues:\n\t\t\t\t'<li>Alice.</li><li>The White Rabbit.</li><li>The Cheshire Cat.</li><li>The Mad Hatter.</li><li>The Queen of Hearts.</li>',\n\t\t},\n\t},\n\ttransforms,\n\tmerge( attributes, attributesToMerge ) {\n\t\tconst { values } = attributesToMerge;\n\n\t\tif ( ! values || values === '<li></li>' ) {\n\t\t\treturn attributes;\n\t\t}\n\n\t\treturn {\n\t\t\t...attributes,\n\t\t\tvalues: attributes.values + values,\n\t\t};\n\t},\n\tedit,\n\tsave,\n\tdeprecated,\n};\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/block-library/src/media-text/index.js"],"names":["name","metadata","settings","icon","example","viewportWidth","attributes","mediaType","mediaUrl","innerBlocks","content","transforms","edit","save","deprecated"],"mappings":";;;;;;;;;AAGA;;AACA;;AAKA;;AACA;;AAEA;;AACA;;AAbA;AACA;AACA;;AAIA;AACA;AACA
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/media-text/index.js"],"names":["name","metadata","settings","icon","example","viewportWidth","attributes","mediaType","mediaUrl","innerBlocks","content","transforms","edit","save","deprecated"],"mappings":";;;;;;;;;AAGA;;AACA;;AAKA;;AACA;;AAEA;;AACA;;AAbA;AACA;AACA;;AAIA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAOA,MAAM;AAAEA,EAAAA;AAAF,IAAWC,QAAjB;;AAIO,MAAMC,QAAQ,GAAG;AACvBC,EAAAA,IAAI,EAAJA,mBADuB;AAEvBC,EAAAA,OAAO,EAAE;AACRC,IAAAA,aAAa,EAAE,GADP;AACY;AACpBC,IAAAA,UAAU,EAAE;AACXC,MAAAA,SAAS,EAAE,OADA;AAEXC,MAAAA,QAAQ,EACP;AAHU,KAFJ;AAORC,IAAAA,WAAW,EAAE,CACZ;AACCT,MAAAA,IAAI,EAAE,gBADP;AAECM,MAAAA,UAAU,EAAE;AACXI,QAAAA,OAAO,EAAE,cACR,8CADQ;AADE;AAFb,KADY,EASZ;AACCV,MAAAA,IAAI,EAAE,gBADP;AAECM,MAAAA,UAAU,EAAE;AACXI,QAAAA,OAAO,EAAE,cAAI,uBAAJ;AADE;AAFb,KATY;AAPL,GAFc;AA0BvBC,EAAAA,UAAU,EAAVA,mBA1BuB;AA2BvBC,EAAAA,IAAI,EAAJA,aA3BuB;AA4BvBC,EAAAA,IAAI,EAAJA,aA5BuB;AA6BvBC,EAAAA,UAAU,EAAVA;AA7BuB,CAAjB","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { mediaAndText as icon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport deprecated from './deprecated';\nimport edit from './edit';\nimport metadata from './block.json';\nimport save from './save';\nimport transforms from './transforms';\n\nconst { name } = metadata;\n\nexport { metadata, name };\n\nexport const settings = {\n\ticon,\n\texample: {\n\t\tviewportWidth: 601, // Columns collapse \"@media (max-width: 600px)\".\n\t\tattributes: {\n\t\t\tmediaType: 'image',\n\t\t\tmediaUrl:\n\t\t\t\t'https://s.w.org/images/core/5.3/Biologia_Centrali-Americana_-_Cantorchilus_semibadius_1902.jpg',\n\t\t},\n\t\tinnerBlocks: [\n\t\t\t{\n\t\t\t\tname: 'core/paragraph',\n\t\t\t\tattributes: {\n\t\t\t\t\tcontent: __(\n\t\t\t\t\t\t'The wren<br>Earns his living<br>Noiselessly.'\n\t\t\t\t\t),\n\t\t\t\t},\n\t\t\t},\n\t\t\t{\n\t\t\t\tname: 'core/paragraph',\n\t\t\t\tattributes: {\n\t\t\t\t\tcontent: __( '— Kobayashi Issa (一茶)' ),\n\t\t\t\t},\n\t\t\t},\n\t\t],\n\t},\n\ttransforms,\n\tedit,\n\tsave,\n\tdeprecated,\n};\n"]}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
|
|
8
|
+
var _element = require("@wordpress/element");
|
|
9
|
+
|
|
10
|
+
var _components = require("@wordpress/components");
|
|
11
|
+
|
|
12
|
+
var _i18n = require("@wordpress/i18n");
|
|
13
|
+
|
|
14
|
+
var _htmlEntities = require("@wordpress/html-entities");
|
|
15
|
+
|
|
16
|
+
/**
|
|
17
|
+
* WordPress dependencies
|
|
18
|
+
*/
|
|
19
|
+
const ExistingMenusOptions = _ref => {
|
|
20
|
+
let {
|
|
21
|
+
showNavigationMenus,
|
|
22
|
+
showClassicMenus = false,
|
|
23
|
+
navigationMenus,
|
|
24
|
+
classicMenus,
|
|
25
|
+
onSelectNavigationMenu,
|
|
26
|
+
onSelectClassicMenu,
|
|
27
|
+
actionLabel
|
|
28
|
+
} = _ref;
|
|
29
|
+
const hasNavigationMenus = !!(navigationMenus !== null && navigationMenus !== void 0 && navigationMenus.length);
|
|
30
|
+
const hasClassicMenus = !!(classicMenus !== null && classicMenus !== void 0 && classicMenus.length);
|
|
31
|
+
/* translators: %s: The name of a menu. */
|
|
32
|
+
|
|
33
|
+
const createActionLabel = (0, _i18n.__)("Create from '%s'");
|
|
34
|
+
actionLabel = actionLabel || createActionLabel;
|
|
35
|
+
return (0, _element.createElement)(_element.Fragment, null, showNavigationMenus && hasNavigationMenus && (0, _element.createElement)(_components.MenuGroup, {
|
|
36
|
+
label: (0, _i18n.__)('Menus')
|
|
37
|
+
}, navigationMenus.map(menu => {
|
|
38
|
+
const label = (0, _htmlEntities.decodeEntities)(menu.title.rendered);
|
|
39
|
+
return (0, _element.createElement)(_components.MenuItem, {
|
|
40
|
+
onClick: () => {
|
|
41
|
+
onSelectNavigationMenu(menu);
|
|
42
|
+
},
|
|
43
|
+
key: menu.id,
|
|
44
|
+
"aria-label": (0, _i18n.sprintf)(actionLabel, label)
|
|
45
|
+
}, label);
|
|
46
|
+
})), showClassicMenus && hasClassicMenus && (0, _element.createElement)(_components.MenuGroup, {
|
|
47
|
+
label: (0, _i18n.__)('Classic Menus')
|
|
48
|
+
}, classicMenus.map(menu => {
|
|
49
|
+
const label = (0, _htmlEntities.decodeEntities)(menu.name);
|
|
50
|
+
return (0, _element.createElement)(_components.MenuItem, {
|
|
51
|
+
onClick: () => {
|
|
52
|
+
onSelectClassicMenu(menu);
|
|
53
|
+
},
|
|
54
|
+
key: menu.id,
|
|
55
|
+
"aria-label": (0, _i18n.sprintf)(createActionLabel, label)
|
|
56
|
+
}, label);
|
|
57
|
+
})));
|
|
58
|
+
};
|
|
59
|
+
|
|
60
|
+
var _default = ExistingMenusOptions;
|
|
61
|
+
exports.default = _default;
|
|
62
|
+
//# sourceMappingURL=existing-menus-options.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/navigation/edit/existing-menus-options.js"],"names":["ExistingMenusOptions","showNavigationMenus","showClassicMenus","navigationMenus","classicMenus","onSelectNavigationMenu","onSelectClassicMenu","actionLabel","hasNavigationMenus","length","hasClassicMenus","createActionLabel","map","menu","label","title","rendered","id","name"],"mappings":";;;;;;;;;AAGA;;AACA;;AACA;;AALA;AACA;AACA;AAKA,MAAMA,oBAAoB,GAAG,QAQtB;AAAA,MARwB;AAC9BC,IAAAA,mBAD8B;AAE9BC,IAAAA,gBAAgB,GAAG,KAFW;AAG9BC,IAAAA,eAH8B;AAI9BC,IAAAA,YAJ8B;AAK9BC,IAAAA,sBAL8B;AAM9BC,IAAAA,mBAN8B;AAO9BC,IAAAA;AAP8B,GAQxB;AACN,QAAMC,kBAAkB,GAAG,CAAC,EAAEL,eAAF,aAAEA,eAAF,eAAEA,eAAe,CAAEM,MAAnB,CAA5B;AACA,QAAMC,eAAe,GAAG,CAAC,EAAEN,YAAF,aAAEA,YAAF,eAAEA,YAAY,CAAEK,MAAhB,CAAzB;AAEA;;AACA,QAAME,iBAAiB,GAAG,cAAI,kBAAJ,CAA1B;AAEAJ,EAAAA,WAAW,GAAGA,WAAW,IAAII,iBAA7B;AAEA,SACC,qDACGV,mBAAmB,IAAIO,kBAAvB,IACD,4BAAC,qBAAD;AAAW,IAAA,KAAK,EAAG,cAAI,OAAJ;AAAnB,KACGL,eAAe,CAACS,GAAhB,CAAuBC,IAAF,IAAY;AAClC,UAAMC,KAAK,GAAG,kCAAgBD,IAAI,CAACE,KAAL,CAAWC,QAA3B,CAAd;AACA,WACC,4BAAC,oBAAD;AACC,MAAA,OAAO,EAAG,MAAM;AACfX,QAAAA,sBAAsB,CAAEQ,IAAF,CAAtB;AACA,OAHF;AAIC,MAAA,GAAG,EAAGA,IAAI,CAACI,EAJZ;AAKC,oBAAa,mBAASV,WAAT,EAAsBO,KAAtB;AALd,OAOGA,KAPH,CADD;AAWA,GAbC,CADH,CAFF,EAmBGZ,gBAAgB,IAAIQ,eAApB,IACD,4BAAC,qBAAD;AAAW,IAAA,KAAK,EAAG,cAAI,eAAJ;AAAnB,KACGN,YAAY,CAACQ,GAAb,CAAoBC,IAAF,IAAY;AAC/B,UAAMC,KAAK,GAAG,kCAAgBD,IAAI,CAACK,IAArB,CAAd;AACA,WACC,4BAAC,oBAAD;AACC,MAAA,OAAO,EAAG,MAAM;AACfZ,QAAAA,mBAAmB,CAAEO,IAAF,CAAnB;AACA,OAHF;AAIC,MAAA,GAAG,EAAGA,IAAI,CAACI,EAJZ;AAKC,oBAAa,mBACZN,iBADY,EAEZG,KAFY;AALd,OAUGA,KAVH,CADD;AAcA,GAhBC,CADH,CApBF,CADD;AA2CA,CA5DD;;eA8Ded,oB","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { MenuGroup, MenuItem } from '@wordpress/components';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { decodeEntities } from '@wordpress/html-entities';\n\nconst ExistingMenusOptions = ( {\n\tshowNavigationMenus,\n\tshowClassicMenus = false,\n\tnavigationMenus,\n\tclassicMenus,\n\tonSelectNavigationMenu,\n\tonSelectClassicMenu,\n\tactionLabel,\n} ) => {\n\tconst hasNavigationMenus = !! navigationMenus?.length;\n\tconst hasClassicMenus = !! classicMenus?.length;\n\n\t/* translators: %s: The name of a menu. */\n\tconst createActionLabel = __( \"Create from '%s'\" );\n\n\tactionLabel = actionLabel || createActionLabel;\n\n\treturn (\n\t\t<>\n\t\t\t{ showNavigationMenus && hasNavigationMenus && (\n\t\t\t\t<MenuGroup label={ __( 'Menus' ) }>\n\t\t\t\t\t{ navigationMenus.map( ( menu ) => {\n\t\t\t\t\t\tconst label = decodeEntities( menu.title.rendered );\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\tonSelectNavigationMenu( menu );\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\tkey={ menu.id }\n\t\t\t\t\t\t\t\taria-label={ sprintf( actionLabel, label ) }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ label }\n\t\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t);\n\t\t\t\t\t} ) }\n\t\t\t\t</MenuGroup>\n\t\t\t) }\n\t\t\t{ showClassicMenus && hasClassicMenus && (\n\t\t\t\t<MenuGroup label={ __( 'Classic Menus' ) }>\n\t\t\t\t\t{ classicMenus.map( ( menu ) => {\n\t\t\t\t\t\tconst label = decodeEntities( menu.name );\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\tonSelectClassicMenu( menu );\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\tkey={ menu.id }\n\t\t\t\t\t\t\t\taria-label={ sprintf(\n\t\t\t\t\t\t\t\t\tcreateActionLabel,\n\t\t\t\t\t\t\t\t\tlabel\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ label }\n\t\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t);\n\t\t\t\t\t} ) }\n\t\t\t\t</MenuGroup>\n\t\t\t) }\n\t\t</>\n\t);\n};\n\nexport default ExistingMenusOptions;\n"]}
|
|
@@ -105,8 +105,7 @@ function Navigation(_ref) {
|
|
|
105
105
|
// navigation block settings.
|
|
106
106
|
hasSubmenuIndicatorSetting = true,
|
|
107
107
|
hasColorSettings = true,
|
|
108
|
-
customPlaceholder: CustomPlaceholder = null
|
|
109
|
-
customAppender: CustomAppender = null
|
|
108
|
+
customPlaceholder: CustomPlaceholder = null
|
|
110
109
|
} = _ref;
|
|
111
110
|
const {
|
|
112
111
|
openSubmenusOnClick,
|
|
@@ -123,7 +122,7 @@ function Navigation(_ref) {
|
|
|
123
122
|
setAreaMenu = _lodash.noop; // Navigation areas are deprecated and on their way out. Let's not perform
|
|
124
123
|
// the request unless we're in an environment where the endpoint exists.
|
|
125
124
|
|
|
126
|
-
if (process.env.
|
|
125
|
+
if (process.env.IS_GUTENBERG_PLUGIN) {
|
|
127
126
|
// eslint-disable-next-line react-hooks/rules-of-hooks
|
|
128
127
|
[areaMenu, setAreaMenu] = (0, _coreData.useEntityProp)('root', 'navigationArea', 'navigation', navigationArea);
|
|
129
128
|
}
|
|
@@ -382,7 +381,8 @@ function Navigation(_ref) {
|
|
|
382
381
|
onClose();
|
|
383
382
|
},
|
|
384
383
|
onCreateNew: startWithEmptyMenu,
|
|
385
|
-
canUserCreateNavigation: canUserCreateNavigation
|
|
384
|
+
canUserCreateNavigation: canUserCreateNavigation,
|
|
385
|
+
canUserSwitchNavigation: canSwitchNavigationMenu
|
|
386
386
|
});
|
|
387
387
|
})), (0, _element.createElement)(_components.ToolbarGroup, null, listViewToolbarButton)), listViewModal, (0, _element.createElement)(_blockEditor.InspectorControls, null, hasSubmenuIndicatorSetting && (0, _element.createElement)(_components.PanelBody, {
|
|
388
388
|
title: (0, _i18n.__)('Display')
|
|
@@ -498,7 +498,6 @@ function Navigation(_ref) {
|
|
|
498
498
|
}, isEntityAvailable && (0, _element.createElement)(_innerBlocks.default, {
|
|
499
499
|
isVisible: !isPlaceholderShown,
|
|
500
500
|
clientId: clientId,
|
|
501
|
-
appender: CustomAppender,
|
|
502
501
|
hasCustomPlaceholder: !!CustomPlaceholder,
|
|
503
502
|
orientation: orientation
|
|
504
503
|
})))));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/block-library/src/navigation/edit/index.js"],"names":["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","hasIcon","areaMenu","setAreaMenu","noop","process","env","GUTENBERG_PHASE","navigationAreaMenu","undefined","ref","registry","setRef","postId","hasAlreadyRendered","RecursionProvider","hasUncontrolledInnerBlocks","uncontrolledInnerBlocks","isInnerBlockSelected","hasSubmenus","select","getBlock","getBlocks","hasSelectedInnerBlock","blockEditorStore","_uncontrolledInnerBlocks","innerBlocks","_hasUncontrolledInnerBlocks","length","_controlledInnerBlocks","find","block","name","replaceInnerBlocks","selectBlock","__unstableMarkNextChangeAsNotPersistent","hasSavedUnsavedInnerBlocks","setHasSavedUnsavedInnerBlocks","isWithinUnassignedArea","isPlaceholderShown","setIsPlaceholderShown","isResponsiveMenuOpen","setResponsiveMenuVisibility","overlayMenuPreview","setOverlayMenuPreview","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","Platform","OS","detectedBackgroundColor","setDetectedBackgroundColor","detectedColor","setDetectedColor","detectedOverlayBackgroundColor","setDetectedOverlayBackgroundColor","detectedOverlayColor","setDetectedOverlayColor","current","subMenuElement","querySelector","showCantEditNotice","hideCantEditNotice","message","showCantCreateNotice","hideCantCreateNotice","startWithEmptyMenu","batch","hasUnsavedBlocks","post","id","PlaceholderComponent","Placeholder","isResponsive","overlayMenuPreviewClasses","open","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 useNavigationEntities from '../use-navigation-entities';\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';\nimport OverlayMenuIcon from './overlay-menu-icon';\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\thasIcon,\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\t// Preload classic menus, so that they don't suddenly pop-in when viewing\n\t// the Select Menu dropdown.\n\tuseNavigationEntities();\n\n\tconst {\n\t\thasUncontrolledInnerBlocks,\n\t\tuncontrolledInnerBlocks,\n\t\tisInnerBlockSelected,\n\t\thasSubmenus,\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 [ overlayMenuPreview, setOverlayMenuPreview ] = useState( false );\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\tconst isResponsive = 'never' !== overlayMenu;\n\n\tconst overlayMenuPreviewClasses = classnames(\n\t\t'wp-block-navigation__overlay-menu-preview',\n\t\t{ open: overlayMenuPreview }\n\t);\n\n\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\tclientId={ clientId }\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\tcanUserCreateNavigation={\n\t\t\t\t\t\t\t\t\t\t\tcanUserCreateNavigation\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t</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{ isResponsive && (\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\tclassName={ overlayMenuPreviewClasses }\n\t\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\t\tsetOverlayMenuPreview(\n\t\t\t\t\t\t\t\t\t\t\t! overlayMenuPreview\n\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ hasIcon && <OverlayMenuIcon /> }\n\t\t\t\t\t\t\t\t\t{ ! hasIcon && (\n\t\t\t\t\t\t\t\t\t\t<span>{ __( 'Menu' ) }</span>\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t{ overlayMenuPreview && (\n\t\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Show icon button' ) }\n\t\t\t\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t\t\t\t'Configure the visual appearance of the button opening the overlay menu.'\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\t\t\tsetAttributes( { hasIcon: value } )\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tchecked={ hasIcon }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t<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{ 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\tlabel={ __( 'Menu' ) }\n\t\t\t\t\t\t\thasIcon={ hasIcon }\n\t\t\t\t\t\t\tisOpen={ isResponsiveMenuOpen }\n\t\t\t\t\t\t\tisResponsive={ isResponsive }\n\t\t\t\t\t\t\tisHiddenByDefault={ 'always' === overlayMenu }\n\t\t\t\t\t\t\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":["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","openSubmenusOnClick","overlayMenu","showSubmenuIcon","layout","justifyContent","orientation","flexWrap","hasIcon","areaMenu","setAreaMenu","noop","process","env","IS_GUTENBERG_PLUGIN","navigationAreaMenu","undefined","ref","registry","setRef","postId","hasAlreadyRendered","RecursionProvider","hasUncontrolledInnerBlocks","uncontrolledInnerBlocks","isInnerBlockSelected","hasSubmenus","select","getBlock","getBlocks","hasSelectedInnerBlock","blockEditorStore","_uncontrolledInnerBlocks","innerBlocks","_hasUncontrolledInnerBlocks","length","_controlledInnerBlocks","find","block","name","replaceInnerBlocks","selectBlock","__unstableMarkNextChangeAsNotPersistent","hasSavedUnsavedInnerBlocks","setHasSavedUnsavedInnerBlocks","isWithinUnassignedArea","isPlaceholderShown","setIsPlaceholderShown","isResponsiveMenuOpen","setResponsiveMenuVisibility","overlayMenuPreview","setOverlayMenuPreview","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","Platform","OS","detectedBackgroundColor","setDetectedBackgroundColor","detectedColor","setDetectedColor","detectedOverlayBackgroundColor","setDetectedOverlayBackgroundColor","detectedOverlayColor","setDetectedOverlayColor","current","subMenuElement","querySelector","showCantEditNotice","hideCantEditNotice","message","showCantCreateNotice","hideCantCreateNotice","startWithEmptyMenu","batch","hasUnsavedBlocks","post","id","PlaceholderComponent","Placeholder","isResponsive","overlayMenuPreviewClasses","open","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 useNavigationEntities from '../use-navigation-entities';\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';\nimport OverlayMenuIcon from './overlay-menu-icon';\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} ) {\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\thasIcon,\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.IS_GUTENBERG_PLUGIN ) {\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\t// Preload classic menus, so that they don't suddenly pop-in when viewing\n\t// the Select Menu dropdown.\n\tuseNavigationEntities();\n\n\tconst {\n\t\thasUncontrolledInnerBlocks,\n\t\tuncontrolledInnerBlocks,\n\t\tisInnerBlockSelected,\n\t\thasSubmenus,\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 [ overlayMenuPreview, setOverlayMenuPreview ] = useState( false );\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\tconst isResponsive = 'never' !== overlayMenu;\n\n\tconst overlayMenuPreviewClasses = classnames(\n\t\t'wp-block-navigation__overlay-menu-preview',\n\t\t{ open: overlayMenuPreview }\n\t);\n\n\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\tclientId={ clientId }\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\tcanUserCreateNavigation={\n\t\t\t\t\t\t\t\t\t\t\tcanUserCreateNavigation\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tcanUserSwitchNavigation={\n\t\t\t\t\t\t\t\t\t\t\tcanSwitchNavigationMenu\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t</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{ isResponsive && (\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\tclassName={ overlayMenuPreviewClasses }\n\t\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\t\tsetOverlayMenuPreview(\n\t\t\t\t\t\t\t\t\t\t\t! overlayMenuPreview\n\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ hasIcon && <OverlayMenuIcon /> }\n\t\t\t\t\t\t\t\t\t{ ! hasIcon && (\n\t\t\t\t\t\t\t\t\t\t<span>{ __( 'Menu' ) }</span>\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t{ overlayMenuPreview && (\n\t\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Show icon button' ) }\n\t\t\t\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t\t\t\t'Configure the visual appearance of the button opening the overlay menu.'\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\t\t\tsetAttributes( { hasIcon: value } )\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tchecked={ hasIcon }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t<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{ 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\tlabel={ __( 'Menu' ) }\n\t\t\t\t\t\t\thasIcon={ hasIcon }\n\t\t\t\t\t\t\tisOpen={ isResponsiveMenuOpen }\n\t\t\t\t\t\t\tisResponsive={ isResponsive }\n\t\t\t\t\t\t\tisHiddenByDefault={ 'always' === overlayMenu }\n\t\t\t\t\t\t\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\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"]}
|
|
@@ -37,7 +37,6 @@ function NavigationInnerBlocks(_ref) {
|
|
|
37
37
|
let {
|
|
38
38
|
isVisible,
|
|
39
39
|
clientId,
|
|
40
|
-
appender: CustomAppender,
|
|
41
40
|
hasCustomPlaceholder,
|
|
42
41
|
orientation
|
|
43
42
|
} = _ref;
|
|
@@ -73,7 +72,6 @@ function NavigationInnerBlocks(_ref) {
|
|
|
73
72
|
// appender.
|
|
74
73
|
|
|
75
74
|
const parentOrChildHasSelection = isSelected || isImmediateParentOfSelectedBlock && !selectedBlockHasDescendants;
|
|
76
|
-
const appender = isVisible && parentOrChildHasSelection ? undefined : false;
|
|
77
75
|
const placeholder = (0, _element.useMemo)(() => (0, _element.createElement)(_placeholderPreview.default, null), []);
|
|
78
76
|
const innerBlocksProps = (0, _blockEditor.useInnerBlocksProps)({
|
|
79
77
|
className: 'wp-block-navigation__container'
|
|
@@ -85,7 +83,13 @@ function NavigationInnerBlocks(_ref) {
|
|
|
85
83
|
__experimentalDefaultBlock: DEFAULT_BLOCK,
|
|
86
84
|
__experimentalDirectInsert: shouldDirectInsert,
|
|
87
85
|
orientation,
|
|
88
|
-
|
|
86
|
+
// As an exception to other blocks which feature nesting, show
|
|
87
|
+
// the block appender even when a child block is selected.
|
|
88
|
+
// This should be a temporary fix, to be replaced by improvements to
|
|
89
|
+
// the sibling inserter.
|
|
90
|
+
// See https://github.com/WordPress/gutenberg/issues/37572.
|
|
91
|
+
renderAppender: isSelected || isImmediateParentOfSelectedBlock && !selectedBlockHasDescendants || // Show the appender while dragging to allow inserting element between item and the appender.
|
|
92
|
+
parentOrChildHasSelection ? _blockEditor.InnerBlocks.ButtonBlockAppender : false,
|
|
89
93
|
// Template lock set to false here so that the Nav
|
|
90
94
|
// Block on the experimental menus screen does not
|
|
91
95
|
// inherit templateLock={ 'all' }.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/block-library/src/navigation/edit/inner-blocks.js"],"names":["ALLOWED_BLOCKS","DEFAULT_BLOCK","name","LAYOUT","type","alignments","NavigationInnerBlocks","isVisible","clientId","
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/navigation/edit/inner-blocks.js"],"names":["ALLOWED_BLOCKS","DEFAULT_BLOCK","name","LAYOUT","type","alignments","NavigationInnerBlocks","isVisible","clientId","hasCustomPlaceholder","orientation","isImmediateParentOfSelectedBlock","selectedBlockHasDescendants","isSelected","select","getClientIdsOfDescendants","hasSelectedInnerBlock","getSelectedBlockClientId","blockEditorStore","selectedBlockId","length","blocks","onInput","onChange","shouldDirectInsert","every","parentOrChildHasSelection","placeholder","innerBlocksProps","className","value","allowedBlocks","__experimentalDefaultBlock","__experimentalDirectInsert","renderAppender","InnerBlocks","ButtonBlockAppender","templateLock","__experimentalLayout","undefined"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useEntityBlockEditor } from '@wordpress/core-data';\nimport {\n\tuseInnerBlocksProps,\n\tInnerBlocks,\n\t__experimentalBlockContentOverlay as BlockContentOverlay,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { useSelect } from '@wordpress/data';\nimport { useMemo } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport PlaceholderPreview from './placeholder/placeholder-preview';\n\nconst ALLOWED_BLOCKS = [\n\t'core/navigation-link',\n\t'core/search',\n\t'core/social-links',\n\t'core/page-list',\n\t'core/spacer',\n\t'core/home-link',\n\t'core/site-title',\n\t'core/site-logo',\n\t'core/navigation-submenu',\n];\n\nconst DEFAULT_BLOCK = {\n\tname: 'core/navigation-link',\n};\n\nconst LAYOUT = {\n\ttype: 'default',\n\talignments: [],\n};\n\nexport default function NavigationInnerBlocks( {\n\tisVisible,\n\tclientId,\n\thasCustomPlaceholder,\n\torientation,\n} ) {\n\tconst {\n\t\tisImmediateParentOfSelectedBlock,\n\t\tselectedBlockHasDescendants,\n\t\tisSelected,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tgetClientIdsOfDescendants,\n\t\t\t\thasSelectedInnerBlock,\n\t\t\t\tgetSelectedBlockClientId,\n\t\t\t} = select( blockEditorStore );\n\t\t\tconst selectedBlockId = getSelectedBlockClientId();\n\n\t\t\treturn {\n\t\t\t\tisImmediateParentOfSelectedBlock: hasSelectedInnerBlock(\n\t\t\t\t\tclientId,\n\t\t\t\t\tfalse\n\t\t\t\t),\n\t\t\t\tselectedBlockHasDescendants: !! getClientIdsOfDescendants( [\n\t\t\t\t\tselectedBlockId,\n\t\t\t\t] )?.length,\n\n\t\t\t\t// This prop is already available but computing it here ensures it's\n\t\t\t\t// fresh compared to isImmediateParentOfSelectedBlock\n\t\t\t\tisSelected: selectedBlockId === clientId,\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\n\tconst [ blocks, onInput, onChange ] = useEntityBlockEditor(\n\t\t'postType',\n\t\t'wp_navigation'\n\t);\n\n\tconst shouldDirectInsert = useMemo(\n\t\t() =>\n\t\t\tblocks.every(\n\t\t\t\t( { name } ) =>\n\t\t\t\t\tname === 'core/navigation-link' ||\n\t\t\t\t\tname === 'core/navigation-submenu' ||\n\t\t\t\t\tname === 'core/page-list'\n\t\t\t),\n\t\t[ blocks ]\n\t);\n\n\t// When the block is selected itself or has a top level item selected that\n\t// doesn't itself have children, show the standard appender. Else show no\n\t// appender.\n\tconst parentOrChildHasSelection =\n\t\tisSelected ||\n\t\t( isImmediateParentOfSelectedBlock && ! selectedBlockHasDescendants );\n\n\tconst placeholder = useMemo( () => <PlaceholderPreview />, [] );\n\n\tconst innerBlocksProps = useInnerBlocksProps(\n\t\t{\n\t\t\tclassName: 'wp-block-navigation__container',\n\t\t},\n\t\t{\n\t\t\tvalue: blocks,\n\t\t\tonInput,\n\t\t\tonChange,\n\t\t\tallowedBlocks: ALLOWED_BLOCKS,\n\t\t\t__experimentalDefaultBlock: DEFAULT_BLOCK,\n\t\t\t__experimentalDirectInsert: shouldDirectInsert,\n\t\t\torientation,\n\n\t\t\t// As an exception to other blocks which feature nesting, show\n\t\t\t// the block appender even when a child block is selected.\n\t\t\t// This should be a temporary fix, to be replaced by improvements to\n\t\t\t// the sibling inserter.\n\t\t\t// See https://github.com/WordPress/gutenberg/issues/37572.\n\t\t\trenderAppender:\n\t\t\t\tisSelected ||\n\t\t\t\t( isImmediateParentOfSelectedBlock &&\n\t\t\t\t\t! selectedBlockHasDescendants ) ||\n\t\t\t\t// Show the appender while dragging to allow inserting element between item and the appender.\n\t\t\t\tparentOrChildHasSelection\n\t\t\t\t\t? InnerBlocks.ButtonBlockAppender\n\t\t\t\t\t: false,\n\n\t\t\t// Template lock set to false here so that the Nav\n\t\t\t// Block on the experimental menus screen does not\n\t\t\t// inherit templateLock={ 'all' }.\n\t\t\ttemplateLock: false,\n\t\t\t__experimentalLayout: LAYOUT,\n\t\t\tplaceholder:\n\t\t\t\t! isVisible || hasCustomPlaceholder ? undefined : placeholder,\n\t\t}\n\t);\n\n\treturn (\n\t\t<BlockContentOverlay\n\t\t\tclientId={ clientId }\n\t\t\ttagName={ 'div' }\n\t\t\twrapperProps={ innerBlocksProps }\n\t\t/>\n\t);\n}\n"]}
|