@wordpress/block-library 8.34.0 → 8.35.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +8 -3
- package/build/audio/edit.js +2 -2
- package/build/audio/edit.js.map +1 -1
- package/build/avatar/edit.js +2 -2
- package/build/avatar/edit.js.map +1 -1
- package/build/block/edit.js +23 -165
- package/build/block/edit.js.map +1 -1
- package/build/button/deprecated.js +16 -16
- package/build/button/deprecated.js.map +1 -1
- package/build/button/edit.js +3 -7
- package/build/button/edit.js.map +1 -1
- package/build/button/index.js +1 -0
- package/build/button/index.js.map +1 -1
- package/build/button/save.js +3 -3
- package/build/button/save.js.map +1 -1
- package/build/buttons/deprecated.js +2 -2
- package/build/buttons/deprecated.js.map +1 -1
- package/build/buttons/edit.js +2 -2
- package/build/buttons/edit.js.map +1 -1
- package/build/buttons/save.js +2 -2
- package/build/buttons/save.js.map +1 -1
- package/build/categories/edit.js +2 -2
- package/build/categories/edit.js.map +1 -1
- package/build/column/deprecated.js +2 -2
- package/build/column/deprecated.js.map +1 -1
- package/build/column/edit.js +2 -2
- package/build/column/edit.js.map +1 -1
- package/build/column/save.js +2 -2
- package/build/column/save.js.map +1 -1
- package/build/columns/deprecated.js +3 -3
- package/build/columns/deprecated.js.map +1 -1
- package/build/columns/edit.js +2 -2
- package/build/columns/edit.js.map +1 -1
- package/build/columns/save.js +2 -2
- package/build/columns/save.js.map +1 -1
- package/build/comment-author-name/edit.js +2 -2
- package/build/comment-author-name/edit.js.map +1 -1
- package/build/comment-content/edit.js +2 -2
- package/build/comment-content/edit.js.map +1 -1
- package/build/comment-edit-link/edit.js +2 -2
- package/build/comment-edit-link/edit.js.map +1 -1
- package/build/comment-reply-link/edit.js +2 -2
- package/build/comment-reply-link/edit.js.map +1 -1
- package/build/comments/edit/comments-legacy.js +2 -2
- package/build/comments/edit/comments-legacy.js.map +1 -1
- package/build/comments-title/edit.js +2 -2
- package/build/comments-title/edit.js.map +1 -1
- package/build/cover/deprecated.js +38 -38
- package/build/cover/deprecated.js.map +1 -1
- package/build/cover/edit/index.js +6 -6
- package/build/cover/edit/index.js.map +1 -1
- package/build/cover/edit/resizable-cover-popover.js +2 -2
- package/build/cover/edit/resizable-cover-popover.js.map +1 -1
- package/build/cover/edit.native.js +2 -2
- package/build/cover/edit.native.js.map +1 -1
- package/build/cover/save.js +5 -5
- package/build/cover/save.js.map +1 -1
- package/build/embed/deprecated.js +3 -3
- package/build/embed/deprecated.js.map +1 -1
- package/build/embed/edit.js +2 -2
- package/build/embed/edit.js.map +1 -1
- package/build/embed/edit.native.js +2 -2
- package/build/embed/edit.native.js.map +1 -1
- package/build/embed/embed-preview.js +3 -3
- package/build/embed/embed-preview.js.map +1 -1
- package/build/embed/embed-preview.native.js +2 -2
- package/build/embed/embed-preview.native.js.map +1 -1
- package/build/embed/icons.js +7 -1
- package/build/embed/icons.js.map +1 -1
- package/build/embed/save.js +2 -2
- package/build/embed/save.js.map +1 -1
- package/build/embed/util.js +10 -8
- package/build/embed/util.js.map +1 -1
- package/build/embed/variations.js +9 -0
- package/build/embed/variations.js.map +1 -1
- package/build/file/deprecated.js +2 -2
- package/build/file/deprecated.js.map +1 -1
- package/build/file/edit.js +3 -3
- package/build/file/edit.js.map +1 -1
- package/build/file/save.js +2 -2
- package/build/file/save.js.map +1 -1
- package/build/form-input/deprecated.js +3 -3
- package/build/form-input/deprecated.js.map +1 -1
- package/build/form-input/edit.js +4 -4
- package/build/form-input/edit.js.map +1 -1
- package/build/form-input/save.js +3 -3
- package/build/form-input/save.js.map +1 -1
- package/build/form-submission-notification/edit.js +2 -2
- package/build/form-submission-notification/edit.js.map +1 -1
- package/build/form-submission-notification/save.js +2 -2
- package/build/form-submission-notification/save.js.map +1 -1
- package/build/gallery/deprecated.js +3 -3
- package/build/gallery/deprecated.js.map +1 -1
- package/build/gallery/edit.js +2 -2
- package/build/gallery/edit.js.map +1 -1
- package/build/gallery/gallery.js +2 -2
- package/build/gallery/gallery.js.map +1 -1
- package/build/gallery/save.js +3 -3
- package/build/gallery/save.js.map +1 -1
- package/build/gallery/v1/gallery-image.js +2 -2
- package/build/gallery/v1/gallery-image.js.map +1 -1
- package/build/gallery/v1/gallery.js +3 -3
- package/build/gallery/v1/gallery.js.map +1 -1
- package/build/gallery/v1/save.js +3 -3
- package/build/gallery/v1/save.js.map +1 -1
- package/build/group/deprecated.js +4 -4
- package/build/group/deprecated.js.map +1 -1
- package/build/heading/deprecated.js +6 -6
- package/build/heading/deprecated.js.map +1 -1
- package/build/heading/edit.js +2 -19
- package/build/heading/edit.js.map +1 -1
- package/build/heading/edit.native.js +2 -2
- package/build/heading/edit.native.js.map +1 -1
- package/build/heading/index.js +1 -0
- package/build/heading/index.js.map +1 -1
- package/build/heading/save.js +2 -2
- package/build/heading/save.js.map +1 -1
- package/build/home-link/edit.js +2 -2
- package/build/home-link/edit.js.map +1 -1
- package/build/html/edit.js +0 -2
- package/build/html/edit.js.map +1 -1
- package/build/image/deprecated.js +10 -10
- package/build/image/deprecated.js.map +1 -1
- package/build/image/edit.js +7 -5
- package/build/image/edit.js.map +1 -1
- package/build/image/image.js +5 -3
- package/build/image/image.js.map +1 -1
- package/build/image/save.js +3 -3
- package/build/image/save.js.map +1 -1
- package/build/latest-posts/edit.js +5 -5
- package/build/latest-posts/edit.js.map +1 -1
- package/build/list/deprecated.js +90 -1
- package/build/list/deprecated.js.map +1 -1
- package/build/list/index.js +0 -2
- package/build/list/index.js.map +1 -1
- package/build/list-item/edit.js +1 -8
- package/build/list-item/edit.js.map +1 -1
- package/build/list-item/index.js +2 -1
- package/build/list-item/index.js.map +1 -1
- package/build/media-text/deprecated.js +10 -10
- package/build/media-text/deprecated.js.map +1 -1
- package/build/media-text/edit.js +2 -2
- package/build/media-text/edit.js.map +1 -1
- package/build/media-text/media-container.js +2 -2
- package/build/media-text/media-container.js.map +1 -1
- package/build/media-text/save.js +3 -3
- package/build/media-text/save.js.map +1 -1
- package/build/navigation/edit/index.js +3 -3
- package/build/navigation/edit/index.js.map +1 -1
- package/build/navigation/edit/responsive-wrapper.js +3 -3
- package/build/navigation/edit/responsive-wrapper.js.map +1 -1
- package/build/navigation/edit/utils.js +2 -2
- package/build/navigation/edit/utils.js.map +1 -1
- package/build/navigation-link/edit.js +3 -3
- package/build/navigation-link/edit.js.map +1 -1
- package/build/navigation-submenu/edit.js +2 -2
- package/build/navigation-submenu/edit.js.map +1 -1
- package/build/page-list/edit.js +2 -2
- package/build/page-list/edit.js.map +1 -1
- package/build/page-list-item/edit.js +3 -3
- package/build/page-list-item/edit.js.map +1 -1
- package/build/paragraph/deprecated.js +6 -6
- package/build/paragraph/deprecated.js.map +1 -1
- package/build/paragraph/edit.js +2 -18
- package/build/paragraph/edit.js.map +1 -1
- package/build/paragraph/index.js +1 -0
- package/build/paragraph/index.js.map +1 -1
- package/build/paragraph/save.js +2 -2
- package/build/paragraph/save.js.map +1 -1
- package/build/paragraph/transforms.js +1 -0
- package/build/paragraph/transforms.js.map +1 -1
- package/build/pattern/edit.js +1 -1
- package/build/pattern/edit.js.map +1 -1
- package/build/post-author/edit.js +2 -2
- package/build/post-author/edit.js.map +1 -1
- package/build/post-author-biography/edit.js +2 -2
- package/build/post-author-biography/edit.js.map +1 -1
- package/build/post-author-name/edit.js +2 -2
- package/build/post-author-name/edit.js.map +1 -1
- package/build/post-comments-count/edit.js +2 -2
- package/build/post-comments-count/edit.js.map +1 -1
- package/build/post-comments-form/edit.js +2 -2
- package/build/post-comments-form/edit.js.map +1 -1
- package/build/post-comments-form/form.js +2 -2
- package/build/post-comments-form/form.js.map +1 -1
- package/build/post-comments-link/edit.js +2 -2
- package/build/post-comments-link/edit.js.map +1 -1
- package/build/post-date/edit.js +2 -2
- package/build/post-date/edit.js.map +1 -1
- package/build/post-excerpt/edit.js +3 -3
- package/build/post-excerpt/edit.js.map +1 -1
- package/build/post-featured-image/dimension-controls.js +20 -28
- package/build/post-featured-image/dimension-controls.js.map +1 -1
- package/build/post-featured-image/edit.js +3 -3
- package/build/post-featured-image/edit.js.map +1 -1
- package/build/post-featured-image/overlay.js +2 -2
- package/build/post-featured-image/overlay.js.map +1 -1
- package/build/post-navigation-link/edit.js +2 -2
- package/build/post-navigation-link/edit.js.map +1 -1
- package/build/post-template/edit.js +6 -6
- package/build/post-template/edit.js.map +1 -1
- package/build/post-terms/edit.js +2 -2
- package/build/post-terms/edit.js.map +1 -1
- package/build/post-time-to-read/edit.js +3 -3
- package/build/post-time-to-read/edit.js.map +1 -1
- package/build/post-title/edit.js +2 -2
- package/build/post-title/edit.js.map +1 -1
- package/build/pullquote/deprecated.js +7 -7
- package/build/pullquote/deprecated.js.map +1 -1
- package/build/pullquote/edit.js +2 -2
- package/build/pullquote/edit.js.map +1 -1
- package/build/pullquote/save.js +2 -2
- package/build/pullquote/save.js.map +1 -1
- package/build/query-title/edit.js +2 -2
- package/build/query-title/edit.js.map +1 -1
- package/build/quote/deprecated.js +3 -3
- package/build/quote/deprecated.js.map +1 -1
- package/build/quote/edit.js +2 -2
- package/build/quote/edit.js.map +1 -1
- package/build/quote/save.js +2 -2
- package/build/quote/save.js.map +1 -1
- package/build/rss/edit.js +8 -6
- package/build/rss/edit.js.map +1 -1
- package/build/search/edit.js +6 -6
- package/build/search/edit.js.map +1 -1
- package/build/search/edit.native.js +2 -2
- package/build/search/edit.native.js.map +1 -1
- package/build/separator/deprecated.js +2 -2
- package/build/separator/deprecated.js.map +1 -1
- package/build/separator/edit.js +2 -2
- package/build/separator/edit.js.map +1 -1
- package/build/separator/save.js +2 -2
- package/build/separator/save.js.map +1 -1
- package/build/shortcode/edit.js +7 -10
- package/build/shortcode/edit.js.map +1 -1
- package/build/site-logo/edit.js +4 -4
- package/build/site-logo/edit.js.map +1 -1
- package/build/site-tagline/edit.js +2 -2
- package/build/site-tagline/edit.js.map +1 -1
- package/build/site-title/edit.js +2 -2
- package/build/site-title/edit.js.map +1 -1
- package/build/social-link/edit.js +3 -3
- package/build/social-link/edit.js.map +1 -1
- package/build/social-links/deprecated.js +2 -2
- package/build/social-links/deprecated.js.map +1 -1
- package/build/social-links/edit.js +2 -2
- package/build/social-links/edit.js.map +1 -1
- package/build/social-links/save.js +2 -2
- package/build/social-links/save.js.map +1 -1
- package/build/spacer/edit.js +3 -3
- package/build/spacer/edit.js.map +1 -1
- package/build/table/deprecated.js +8 -8
- package/build/table/deprecated.js.map +1 -1
- package/build/table/edit.js +3 -3
- package/build/table/edit.js.map +1 -1
- package/build/table/save.js +3 -3
- package/build/table/save.js.map +1 -1
- package/build/term-description/edit.js +2 -2
- package/build/term-description/edit.js.map +1 -1
- package/build/utils/caption.js +2 -2
- package/build/utils/caption.js.map +1 -1
- package/build/verse/deprecated.js +2 -2
- package/build/verse/deprecated.js.map +1 -1
- package/build/verse/edit.js +2 -2
- package/build/verse/edit.js.map +1 -1
- package/build/verse/save.js +2 -2
- package/build/verse/save.js.map +1 -1
- package/build/video/edit.js +2 -2
- package/build/video/edit.js.map +1 -1
- package/build-module/audio/edit.js +2 -2
- package/build-module/audio/edit.js.map +1 -1
- package/build-module/avatar/edit.js +2 -2
- package/build-module/avatar/edit.js.map +1 -1
- package/build-module/block/edit.js +27 -169
- package/build-module/block/edit.js.map +1 -1
- package/build-module/button/deprecated.js +16 -16
- package/build-module/button/deprecated.js.map +1 -1
- package/build-module/button/edit.js +3 -7
- package/build-module/button/edit.js.map +1 -1
- package/build-module/button/index.js +1 -0
- package/build-module/button/index.js.map +1 -1
- package/build-module/button/save.js +3 -3
- package/build-module/button/save.js.map +1 -1
- package/build-module/buttons/deprecated.js +2 -2
- package/build-module/buttons/deprecated.js.map +1 -1
- package/build-module/buttons/edit.js +2 -2
- package/build-module/buttons/edit.js.map +1 -1
- package/build-module/buttons/save.js +2 -2
- package/build-module/buttons/save.js.map +1 -1
- package/build-module/categories/edit.js +2 -2
- package/build-module/categories/edit.js.map +1 -1
- package/build-module/column/deprecated.js +2 -2
- package/build-module/column/deprecated.js.map +1 -1
- package/build-module/column/edit.js +2 -2
- package/build-module/column/edit.js.map +1 -1
- package/build-module/column/save.js +2 -2
- package/build-module/column/save.js.map +1 -1
- package/build-module/columns/deprecated.js +3 -3
- package/build-module/columns/deprecated.js.map +1 -1
- package/build-module/columns/edit.js +2 -2
- package/build-module/columns/edit.js.map +1 -1
- package/build-module/columns/save.js +2 -2
- package/build-module/columns/save.js.map +1 -1
- package/build-module/comment-author-name/edit.js +2 -2
- package/build-module/comment-author-name/edit.js.map +1 -1
- package/build-module/comment-content/edit.js +2 -2
- package/build-module/comment-content/edit.js.map +1 -1
- package/build-module/comment-edit-link/edit.js +2 -2
- package/build-module/comment-edit-link/edit.js.map +1 -1
- package/build-module/comment-reply-link/edit.js +2 -2
- package/build-module/comment-reply-link/edit.js.map +1 -1
- package/build-module/comments/edit/comments-legacy.js +2 -2
- package/build-module/comments/edit/comments-legacy.js.map +1 -1
- package/build-module/comments-title/edit.js +2 -2
- package/build-module/comments-title/edit.js.map +1 -1
- package/build-module/cover/deprecated.js +38 -38
- package/build-module/cover/deprecated.js.map +1 -1
- package/build-module/cover/edit/index.js +6 -6
- package/build-module/cover/edit/index.js.map +1 -1
- package/build-module/cover/edit/resizable-cover-popover.js +2 -2
- package/build-module/cover/edit/resizable-cover-popover.js.map +1 -1
- package/build-module/cover/edit.native.js +2 -2
- package/build-module/cover/edit.native.js.map +1 -1
- package/build-module/cover/save.js +5 -5
- package/build-module/cover/save.js.map +1 -1
- package/build-module/embed/deprecated.js +3 -3
- package/build-module/embed/deprecated.js.map +1 -1
- package/build-module/embed/edit.js +2 -2
- package/build-module/embed/edit.js.map +1 -1
- package/build-module/embed/edit.native.js +2 -2
- package/build-module/embed/edit.native.js.map +1 -1
- package/build-module/embed/embed-preview.js +3 -3
- package/build-module/embed/embed-preview.js.map +1 -1
- package/build-module/embed/embed-preview.native.js +2 -2
- package/build-module/embed/embed-preview.native.js.map +1 -1
- package/build-module/embed/icons.js +6 -0
- package/build-module/embed/icons.js.map +1 -1
- package/build-module/embed/save.js +2 -2
- package/build-module/embed/save.js.map +1 -1
- package/build-module/embed/util.js +10 -8
- package/build-module/embed/util.js.map +1 -1
- package/build-module/embed/variations.js +10 -1
- package/build-module/embed/variations.js.map +1 -1
- package/build-module/file/deprecated.js +2 -2
- package/build-module/file/deprecated.js.map +1 -1
- package/build-module/file/edit.js +3 -3
- package/build-module/file/edit.js.map +1 -1
- package/build-module/file/save.js +2 -2
- package/build-module/file/save.js.map +1 -1
- package/build-module/form-input/deprecated.js +3 -3
- package/build-module/form-input/deprecated.js.map +1 -1
- package/build-module/form-input/edit.js +4 -4
- package/build-module/form-input/edit.js.map +1 -1
- package/build-module/form-input/save.js +3 -3
- package/build-module/form-input/save.js.map +1 -1
- package/build-module/form-submission-notification/edit.js +2 -2
- package/build-module/form-submission-notification/edit.js.map +1 -1
- package/build-module/form-submission-notification/save.js +2 -2
- package/build-module/form-submission-notification/save.js.map +1 -1
- package/build-module/gallery/deprecated.js +3 -3
- package/build-module/gallery/deprecated.js.map +1 -1
- package/build-module/gallery/edit.js +2 -2
- package/build-module/gallery/edit.js.map +1 -1
- package/build-module/gallery/gallery.js +2 -2
- package/build-module/gallery/gallery.js.map +1 -1
- package/build-module/gallery/save.js +3 -3
- package/build-module/gallery/save.js.map +1 -1
- package/build-module/gallery/v1/gallery-image.js +2 -2
- package/build-module/gallery/v1/gallery-image.js.map +1 -1
- package/build-module/gallery/v1/gallery.js +3 -3
- package/build-module/gallery/v1/gallery.js.map +1 -1
- package/build-module/gallery/v1/save.js +3 -3
- package/build-module/gallery/v1/save.js.map +1 -1
- package/build-module/group/deprecated.js +4 -4
- package/build-module/group/deprecated.js.map +1 -1
- package/build-module/heading/deprecated.js +6 -6
- package/build-module/heading/deprecated.js.map +1 -1
- package/build-module/heading/edit.js +2 -19
- package/build-module/heading/edit.js.map +1 -1
- package/build-module/heading/edit.native.js +2 -2
- package/build-module/heading/edit.native.js.map +1 -1
- package/build-module/heading/index.js +1 -0
- package/build-module/heading/index.js.map +1 -1
- package/build-module/heading/save.js +2 -2
- package/build-module/heading/save.js.map +1 -1
- package/build-module/home-link/edit.js +2 -2
- package/build-module/home-link/edit.js.map +1 -1
- package/build-module/html/edit.js +0 -2
- package/build-module/html/edit.js.map +1 -1
- package/build-module/image/deprecated.js +10 -10
- package/build-module/image/deprecated.js.map +1 -1
- package/build-module/image/edit.js +7 -5
- package/build-module/image/edit.js.map +1 -1
- package/build-module/image/image.js +5 -3
- package/build-module/image/image.js.map +1 -1
- package/build-module/image/save.js +3 -3
- package/build-module/image/save.js.map +1 -1
- package/build-module/latest-posts/edit.js +6 -6
- package/build-module/latest-posts/edit.js.map +1 -1
- package/build-module/list/deprecated.js +90 -1
- package/build-module/list/deprecated.js.map +1 -1
- package/build-module/list/index.js +0 -2
- package/build-module/list/index.js.map +1 -1
- package/build-module/list-item/edit.js +2 -9
- package/build-module/list-item/edit.js.map +1 -1
- package/build-module/list-item/index.js +2 -1
- package/build-module/list-item/index.js.map +1 -1
- package/build-module/media-text/deprecated.js +10 -10
- package/build-module/media-text/deprecated.js.map +1 -1
- package/build-module/media-text/edit.js +2 -2
- package/build-module/media-text/edit.js.map +1 -1
- package/build-module/media-text/media-container.js +2 -2
- package/build-module/media-text/media-container.js.map +1 -1
- package/build-module/media-text/save.js +3 -3
- package/build-module/media-text/save.js.map +1 -1
- package/build-module/navigation/edit/index.js +3 -3
- package/build-module/navigation/edit/index.js.map +1 -1
- package/build-module/navigation/edit/responsive-wrapper.js +3 -3
- package/build-module/navigation/edit/responsive-wrapper.js.map +1 -1
- package/build-module/navigation/edit/utils.js +2 -2
- package/build-module/navigation/edit/utils.js.map +1 -1
- package/build-module/navigation-link/edit.js +3 -3
- package/build-module/navigation-link/edit.js.map +1 -1
- package/build-module/navigation-submenu/edit.js +2 -2
- package/build-module/navigation-submenu/edit.js.map +1 -1
- package/build-module/page-list/edit.js +2 -2
- package/build-module/page-list/edit.js.map +1 -1
- package/build-module/page-list-item/edit.js +3 -3
- package/build-module/page-list-item/edit.js.map +1 -1
- package/build-module/paragraph/deprecated.js +6 -6
- package/build-module/paragraph/deprecated.js.map +1 -1
- package/build-module/paragraph/edit.js +2 -18
- package/build-module/paragraph/edit.js.map +1 -1
- package/build-module/paragraph/index.js +1 -0
- package/build-module/paragraph/index.js.map +1 -1
- package/build-module/paragraph/save.js +2 -2
- package/build-module/paragraph/save.js.map +1 -1
- package/build-module/paragraph/transforms.js +1 -0
- package/build-module/paragraph/transforms.js.map +1 -1
- package/build-module/pattern/edit.js +1 -1
- package/build-module/pattern/edit.js.map +1 -1
- package/build-module/post-author/edit.js +2 -2
- package/build-module/post-author/edit.js.map +1 -1
- package/build-module/post-author-biography/edit.js +2 -2
- package/build-module/post-author-biography/edit.js.map +1 -1
- package/build-module/post-author-name/edit.js +2 -2
- package/build-module/post-author-name/edit.js.map +1 -1
- package/build-module/post-comments-count/edit.js +2 -2
- package/build-module/post-comments-count/edit.js.map +1 -1
- package/build-module/post-comments-form/edit.js +2 -2
- package/build-module/post-comments-form/edit.js.map +1 -1
- package/build-module/post-comments-form/form.js +2 -2
- package/build-module/post-comments-form/form.js.map +1 -1
- package/build-module/post-comments-link/edit.js +2 -2
- package/build-module/post-comments-link/edit.js.map +1 -1
- package/build-module/post-date/edit.js +2 -2
- package/build-module/post-date/edit.js.map +1 -1
- package/build-module/post-excerpt/edit.js +3 -3
- package/build-module/post-excerpt/edit.js.map +1 -1
- package/build-module/post-featured-image/dimension-controls.js +20 -28
- package/build-module/post-featured-image/dimension-controls.js.map +1 -1
- package/build-module/post-featured-image/edit.js +3 -3
- package/build-module/post-featured-image/edit.js.map +1 -1
- package/build-module/post-featured-image/overlay.js +2 -2
- package/build-module/post-featured-image/overlay.js.map +1 -1
- package/build-module/post-navigation-link/edit.js +2 -2
- package/build-module/post-navigation-link/edit.js.map +1 -1
- package/build-module/post-template/edit.js +7 -7
- package/build-module/post-template/edit.js.map +1 -1
- package/build-module/post-terms/edit.js +2 -2
- package/build-module/post-terms/edit.js.map +1 -1
- package/build-module/post-time-to-read/edit.js +3 -3
- package/build-module/post-time-to-read/edit.js.map +1 -1
- package/build-module/post-title/edit.js +2 -2
- package/build-module/post-title/edit.js.map +1 -1
- package/build-module/pullquote/deprecated.js +7 -7
- package/build-module/pullquote/deprecated.js.map +1 -1
- package/build-module/pullquote/edit.js +2 -2
- package/build-module/pullquote/edit.js.map +1 -1
- package/build-module/pullquote/save.js +2 -2
- package/build-module/pullquote/save.js.map +1 -1
- package/build-module/query-title/edit.js +2 -2
- package/build-module/query-title/edit.js.map +1 -1
- package/build-module/quote/deprecated.js +3 -3
- package/build-module/quote/deprecated.js.map +1 -1
- package/build-module/quote/edit.js +2 -2
- package/build-module/quote/edit.js.map +1 -1
- package/build-module/quote/save.js +2 -2
- package/build-module/quote/save.js.map +1 -1
- package/build-module/rss/edit.js +10 -8
- package/build-module/rss/edit.js.map +1 -1
- package/build-module/search/edit.js +6 -6
- package/build-module/search/edit.js.map +1 -1
- package/build-module/search/edit.native.js +2 -2
- package/build-module/search/edit.native.js.map +1 -1
- package/build-module/separator/deprecated.js +2 -2
- package/build-module/separator/deprecated.js.map +1 -1
- package/build-module/separator/edit.js +2 -2
- package/build-module/separator/edit.js.map +1 -1
- package/build-module/separator/save.js +2 -2
- package/build-module/separator/save.js.map +1 -1
- package/build-module/shortcode/edit.js +8 -11
- package/build-module/shortcode/edit.js.map +1 -1
- package/build-module/site-logo/edit.js +4 -4
- package/build-module/site-logo/edit.js.map +1 -1
- package/build-module/site-tagline/edit.js +2 -2
- package/build-module/site-tagline/edit.js.map +1 -1
- package/build-module/site-title/edit.js +2 -2
- package/build-module/site-title/edit.js.map +1 -1
- package/build-module/social-link/edit.js +3 -3
- package/build-module/social-link/edit.js.map +1 -1
- package/build-module/social-links/deprecated.js +2 -2
- package/build-module/social-links/deprecated.js.map +1 -1
- package/build-module/social-links/edit.js +2 -2
- package/build-module/social-links/edit.js.map +1 -1
- package/build-module/social-links/save.js +2 -2
- package/build-module/social-links/save.js.map +1 -1
- package/build-module/spacer/edit.js +3 -3
- package/build-module/spacer/edit.js.map +1 -1
- package/build-module/table/deprecated.js +8 -8
- package/build-module/table/deprecated.js.map +1 -1
- package/build-module/table/edit.js +3 -3
- package/build-module/table/edit.js.map +1 -1
- package/build-module/table/save.js +3 -3
- package/build-module/table/save.js.map +1 -1
- package/build-module/term-description/edit.js +2 -2
- package/build-module/term-description/edit.js.map +1 -1
- package/build-module/utils/caption.js +2 -2
- package/build-module/utils/caption.js.map +1 -1
- package/build-module/verse/deprecated.js +2 -2
- package/build-module/verse/deprecated.js.map +1 -1
- package/build-module/verse/edit.js +2 -2
- package/build-module/verse/edit.js.map +1 -1
- package/build-module/verse/save.js +2 -2
- package/build-module/verse/save.js.map +1 -1
- package/build-module/video/edit.js +2 -2
- package/build-module/video/edit.js.map +1 -1
- package/build-style/block/editor-rtl.css +4 -4
- package/build-style/block/editor.css +4 -4
- package/build-style/buttons/editor-rtl.css +1 -1
- package/build-style/buttons/editor.css +1 -1
- package/build-style/buttons/style-rtl.css +1 -1
- package/build-style/buttons/style.css +1 -1
- package/build-style/common-rtl.css +3 -7
- package/build-style/common.css +3 -7
- package/build-style/editor-rtl.css +15 -32
- package/build-style/editor.css +15 -32
- package/build-style/group/editor-rtl.css +2 -1
- package/build-style/group/editor.css +2 -1
- package/build-style/image/editor-rtl.css +3 -0
- package/build-style/image/editor.css +3 -0
- package/build-style/image/style-rtl.css +1 -2
- package/build-style/image/style.css +1 -2
- package/build-style/post-template/style-rtl.css +0 -3
- package/build-style/post-template/style.css +0 -3
- package/build-style/rss/editor-rtl.css +1 -10
- package/build-style/rss/editor.css +1 -10
- package/build-style/shortcode/editor-rtl.css +0 -4
- package/build-style/shortcode/editor.css +0 -4
- package/build-style/style-rtl.css +5 -13
- package/build-style/style.css +5 -13
- package/build-style/template-part/editor-rtl.css +3 -7
- package/build-style/template-part/editor.css +3 -7
- package/package.json +36 -36
- package/src/audio/edit.js +2 -2
- package/src/avatar/edit.js +2 -2
- package/src/block/edit.js +30 -245
- package/src/block/editor.scss +7 -5
- package/src/button/block.json +1 -0
- package/src/button/deprecated.js +16 -16
- package/src/button/edit.js +3 -9
- package/src/button/save.js +3 -3
- package/src/buttons/deprecated.js +2 -2
- package/src/buttons/edit.js +2 -2
- package/src/buttons/editor.scss +1 -3
- package/src/buttons/save.js +2 -2
- package/src/buttons/style.scss +1 -3
- package/src/categories/edit.js +2 -2
- package/src/code/theme.native.scss +1 -1
- package/src/column/deprecated.js +2 -2
- package/src/column/edit.js +2 -2
- package/src/column/save.js +2 -2
- package/src/columns/deprecated.js +3 -3
- package/src/columns/edit.js +2 -2
- package/src/columns/save.js +2 -2
- package/src/comment-author-name/edit.js +2 -2
- package/src/comment-content/edit.js +2 -2
- package/src/comment-edit-link/edit.js +2 -2
- package/src/comment-reply-link/edit.js +2 -2
- package/src/comments/edit/comments-legacy.js +2 -2
- package/src/comments-title/edit.js +2 -2
- package/src/common.scss +4 -4
- package/src/cover/deprecated.js +38 -38
- package/src/cover/edit/index.js +6 -9
- package/src/cover/edit/resizable-cover-popover.js +2 -2
- package/src/cover/edit.native.js +2 -2
- package/src/cover/save.js +5 -5
- package/src/embed/deprecated.js +3 -3
- package/src/embed/edit.js +2 -2
- package/src/embed/edit.native.js +2 -2
- package/src/embed/embed-preview.js +3 -3
- package/src/embed/embed-preview.native.js +2 -2
- package/src/embed/icons.js +9 -0
- package/src/embed/save.js +2 -2
- package/src/embed/util.js +10 -6
- package/src/embed/variations.js +9 -0
- package/src/file/deprecated.js +2 -2
- package/src/file/edit.js +3 -3
- package/src/file/save.js +2 -2
- package/src/form-input/deprecated.js +3 -3
- package/src/form-input/edit.js +4 -4
- package/src/form-input/save.js +3 -3
- package/src/form-submission-notification/edit.js +2 -2
- package/src/form-submission-notification/save.js +4 -7
- package/src/gallery/deprecated.js +3 -3
- package/src/gallery/edit.js +2 -2
- package/src/gallery/gallery.js +2 -2
- package/src/gallery/save.js +3 -3
- package/src/gallery/test/helpers.native.js +3 -3
- package/src/gallery/v1/gallery-image.js +2 -2
- package/src/gallery/v1/gallery.js +3 -3
- package/src/gallery/v1/save.js +3 -3
- package/src/group/deprecated.js +4 -4
- package/src/group/editor.scss +2 -1
- package/src/heading/block.json +1 -0
- package/src/heading/deprecated.js +6 -6
- package/src/heading/edit.js +2 -23
- package/src/heading/edit.native.js +2 -2
- package/src/heading/save.js +2 -2
- package/src/heading/test/__snapshots__/transforms.native.js.snap +1 -1
- package/src/home-link/edit.js +2 -2
- package/src/html/edit.js +0 -2
- package/src/image/deprecated.js +10 -10
- package/src/image/edit.js +5 -3
- package/src/image/editor.scss +13 -7
- package/src/image/image.js +5 -2
- package/src/image/save.js +3 -3
- package/src/image/style.scss +1 -3
- package/src/latest-posts/edit.js +6 -6
- package/src/latest-posts/index.php +1 -0
- package/src/list/block.json +0 -2
- package/src/list/deprecated.js +88 -1
- package/src/list/index.php +54 -0
- package/src/list/test/__snapshots__/edit.native.js.snap +11 -11
- package/src/list/test/__snapshots__/transforms.native.js.snap +3 -3
- package/src/list/test/edit.native.js +24 -24
- package/src/list/test/transforms.native.js +1 -1
- package/src/list-item/block.json +2 -1
- package/src/list-item/edit.js +0 -15
- package/src/media-text/deprecated.js +10 -10
- package/src/media-text/edit.js +2 -2
- package/src/media-text/media-container.js +2 -2
- package/src/media-text/save.js +3 -3
- package/src/navigation/edit/index.js +3 -3
- package/src/navigation/edit/responsive-wrapper.js +3 -3
- package/src/navigation/edit/utils.js +2 -2
- package/src/navigation/index.php +52 -1
- package/src/navigation-link/edit.js +3 -3
- package/src/navigation-submenu/edit.js +2 -2
- package/src/page-list/edit.js +2 -2
- package/src/page-list-item/edit.js +3 -3
- package/src/paragraph/block.json +1 -0
- package/src/paragraph/deprecated.js +6 -6
- package/src/paragraph/edit.js +2 -23
- package/src/paragraph/save.js +2 -2
- package/src/paragraph/test/__snapshots__/transforms.native.js.snap +1 -1
- package/src/pattern/edit.js +1 -1
- package/src/post-author/edit.js +2 -2
- package/src/post-author-biography/edit.js +2 -2
- package/src/post-author-name/edit.js +2 -2
- package/src/post-comments-count/edit.js +2 -2
- package/src/post-comments-form/edit.js +2 -2
- package/src/post-comments-form/form.js +2 -2
- package/src/post-comments-link/edit.js +2 -2
- package/src/post-date/edit.js +2 -2
- package/src/post-excerpt/edit.js +3 -3
- package/src/post-featured-image/dimension-controls.js +30 -36
- package/src/post-featured-image/edit.js +3 -3
- package/src/post-featured-image/overlay.js +2 -2
- package/src/post-navigation-link/edit.js +2 -2
- package/src/post-template/edit.js +7 -7
- package/src/post-template/style.scss +0 -4
- package/src/post-terms/edit.js +2 -2
- package/src/post-time-to-read/edit.js +3 -3
- package/src/post-title/edit.js +2 -2
- package/src/pullquote/deprecated.js +7 -7
- package/src/pullquote/edit.js +2 -2
- package/src/pullquote/save.js +2 -2
- package/src/query-title/edit.js +2 -2
- package/src/quote/deprecated.js +3 -3
- package/src/quote/edit.js +2 -2
- package/src/quote/save.js +2 -2
- package/src/rss/edit.js +30 -23
- package/src/rss/editor.scss +2 -16
- package/src/search/edit.js +6 -6
- package/src/search/edit.native.js +2 -2
- package/src/separator/deprecated.js +2 -2
- package/src/separator/edit.js +2 -2
- package/src/separator/save.js +2 -2
- package/src/shortcode/edit.js +13 -17
- package/src/shortcode/editor.scss +0 -6
- package/src/site-logo/edit.js +4 -4
- package/src/site-logo/index.php +2 -0
- package/src/site-tagline/edit.js +2 -2
- package/src/site-title/edit.js +2 -2
- package/src/social-link/edit.js +3 -3
- package/src/social-links/deprecated.js +2 -2
- package/src/social-links/edit.js +2 -2
- package/src/social-links/save.js +2 -2
- package/src/spacer/edit.js +3 -3
- package/src/table/deprecated.js +12 -20
- package/src/table/edit.js +3 -3
- package/src/table/save.js +3 -3
- package/src/template-part/editor.scss +5 -8
- package/src/term-description/edit.js +2 -2
- package/src/utils/caption.js +2 -2
- package/src/verse/deprecated.js +2 -2
- package/src/verse/edit.js +2 -2
- package/src/verse/save.js +2 -2
- package/src/video/edit.js +2 -2
- package/tsconfig.tsbuildinfo +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_classnames","_interopRequireDefault","require","_blocks","_data","_components","_keycodes","_i18n","_blockEditor","_url","_element","_dom","_htmlEntities","_icons","_coreData","_compose","_linkUi","_updateAttributes","_utils","DEFAULT_BLOCK","name","useIsDraggingWithin","elementRef","isDraggingWithin","setIsDraggingWithin","useState","useEffect","ownerDocument","current","handleDragStart","event","handleDragEnter","handleDragEnd","contains","target","addEventListener","removeEventListener","useIsInvalidLink","kind","type","id","isPostType","hasId","Number","isInteger","postStatus","useSelect","select","getEntityRecord","coreStore","status","isInvalid","isDraft","getMissingText","missingText","__","Controls","attributes","setAttributes","setIsLabelFieldFocused","label","url","description","title","rel","_react","createElement","PanelBody","TextControl","__nextHasNoMarginBottom","__next40pxDefaultSize","value","stripHTML","onChange","labelValue","autoComplete","onFocus","onBlur","safeDecodeURI","urlValue","updateAttributes","TextareaControl","descriptionValue","help","titleValue","relValue","NavigationLinkEdit","isSelected","insertBlocksAfter","mergeBlocks","onReplace","context","clientId","maxNestingLevel","replaceBlock","__unstableMarkNextChangeAsNotPersistent","selectBlock","selectPreviousBlock","useDispatch","blockEditorStore","isLinkOpen","setIsLinkOpen","openedBy","setOpenedBy","popoverAnchor","setPopoverAnchor","listItemRef","useRef","itemLabelPlaceholder","ref","prevUrl","usePrevious","isLabelFieldFocused","isAtMaxNesting","isTopLevelLink","isParentOfSelectedBlock","hasChildren","getBlockCount","getBlockName","getBlockRootClientId","hasSelectedInnerBlock","getBlockParentsByBlockName","length","getBlocks","transformToSubmenu","innerBlocks","createBlock","newSubmenu","isURL","prependHTTP","test","selectLabelText","focus","defaultView","selection","getSelection","range","createRange","selectNodeContents","removeAllRanges","addRange","removeLink","undefined","opensInNewTab","textColor","customTextColor","backgroundColor","customBackgroundColor","getColors","onKeyDown","isKeyboardEvent","primary","preventDefault","stopPropagation","blockProps","useBlockProps","useMergeRefs","className","classnames","getColorClassName","style","color","innerBlocksProps","useInnerBlocksProps","defaultBlock","directInsert","renderAppender","onClick","classes","placeholderText","tooltipText","Fragment","BlockControls","ToolbarGroup","ToolbarButton","icon","linkIcon","shortcut","displayShortcut","currentTarget","addSubmenu","InspectorControls","Tooltip","text","RichText","identifier","onMerge","__unstableOnSplitAtEnd","placeholder","withoutInteractiveFormatting","allowedFormats","decodeEntities","trim","LinkUI","link","onClose","anchor","onRemove","updatedValue"],"sources":["@wordpress/block-library/src/navigation-link/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { createBlock } from '@wordpress/blocks';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport {\n\tPanelBody,\n\tTextControl,\n\tTextareaControl,\n\tToolbarButton,\n\tTooltip,\n\tToolbarGroup,\n} from '@wordpress/components';\nimport { displayShortcut, isKeyboardEvent } from '@wordpress/keycodes';\nimport { __ } from '@wordpress/i18n';\nimport {\n\tBlockControls,\n\tInspectorControls,\n\tRichText,\n\tuseBlockProps,\n\tstore as blockEditorStore,\n\tgetColorClassName,\n\tuseInnerBlocksProps,\n} from '@wordpress/block-editor';\nimport { isURL, prependHTTP, safeDecodeURI } from '@wordpress/url';\nimport { useState, useEffect, useRef } from '@wordpress/element';\nimport { __unstableStripHTML as stripHTML } from '@wordpress/dom';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { link as linkIcon, addSubmenu } from '@wordpress/icons';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { useMergeRefs, usePrevious } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport { LinkUI } from './link-ui';\nimport { updateAttributes } from './update-attributes';\nimport { getColors } from '../navigation/edit/utils';\n\nconst DEFAULT_BLOCK = { name: 'core/navigation-link' };\n\n/**\n * A React hook to determine if it's dragging within the target element.\n *\n * @typedef {import('@wordpress/element').RefObject} RefObject\n *\n * @param {RefObject<HTMLElement>} elementRef The target elementRef object.\n *\n * @return {boolean} Is dragging within the target element.\n */\nconst useIsDraggingWithin = ( elementRef ) => {\n\tconst [ isDraggingWithin, setIsDraggingWithin ] = useState( false );\n\n\tuseEffect( () => {\n\t\tconst { ownerDocument } = elementRef.current;\n\n\t\tfunction handleDragStart( event ) {\n\t\t\t// Check the first time when the dragging starts.\n\t\t\thandleDragEnter( event );\n\t\t}\n\n\t\t// Set to false whenever the user cancel the drag event by either releasing the mouse or press Escape.\n\t\tfunction handleDragEnd() {\n\t\t\tsetIsDraggingWithin( false );\n\t\t}\n\n\t\tfunction handleDragEnter( event ) {\n\t\t\t// Check if the current target is inside the item element.\n\t\t\tif ( elementRef.current.contains( event.target ) ) {\n\t\t\t\tsetIsDraggingWithin( true );\n\t\t\t} else {\n\t\t\t\tsetIsDraggingWithin( false );\n\t\t\t}\n\t\t}\n\n\t\t// Bind these events to the document to catch all drag events.\n\t\t// Ideally, we can also use `event.relatedTarget`, but sadly that\n\t\t// doesn't work in Safari.\n\t\townerDocument.addEventListener( 'dragstart', handleDragStart );\n\t\townerDocument.addEventListener( 'dragend', handleDragEnd );\n\t\townerDocument.addEventListener( 'dragenter', handleDragEnter );\n\n\t\treturn () => {\n\t\t\townerDocument.removeEventListener( 'dragstart', handleDragStart );\n\t\t\townerDocument.removeEventListener( 'dragend', handleDragEnd );\n\t\t\townerDocument.removeEventListener( 'dragenter', handleDragEnter );\n\t\t};\n\t}, [ elementRef ] );\n\n\treturn isDraggingWithin;\n};\n\nconst useIsInvalidLink = ( kind, type, id ) => {\n\tconst isPostType =\n\t\tkind === 'post-type' || type === 'post' || type === 'page';\n\tconst hasId = Number.isInteger( id );\n\tconst postStatus = useSelect(\n\t\t( select ) => {\n\t\t\tif ( ! isPostType ) {\n\t\t\t\treturn null;\n\t\t\t}\n\t\t\tconst { getEntityRecord } = select( coreStore );\n\t\t\treturn getEntityRecord( 'postType', type, id )?.status;\n\t\t},\n\t\t[ isPostType, type, id ]\n\t);\n\n\t// Check Navigation Link validity if:\n\t// 1. Link is 'post-type'.\n\t// 2. It has an id.\n\t// 3. It's neither null, nor undefined, as valid items might be either of those while loading.\n\t// If those conditions are met, check if\n\t// 1. The post status is published.\n\t// 2. The Navigation Link item has no label.\n\t// If either of those is true, invalidate.\n\tconst isInvalid =\n\t\tisPostType && hasId && postStatus && 'trash' === postStatus;\n\tconst isDraft = 'draft' === postStatus;\n\n\treturn [ isInvalid, isDraft ];\n};\n\nfunction getMissingText( type ) {\n\tlet missingText = '';\n\n\tswitch ( type ) {\n\t\tcase 'post':\n\t\t\t/* translators: label for missing post in navigation link block */\n\t\t\tmissingText = __( 'Select post' );\n\t\t\tbreak;\n\t\tcase 'page':\n\t\t\t/* translators: label for missing page in navigation link block */\n\t\t\tmissingText = __( 'Select page' );\n\t\t\tbreak;\n\t\tcase 'category':\n\t\t\t/* translators: label for missing category in navigation link block */\n\t\t\tmissingText = __( 'Select category' );\n\t\t\tbreak;\n\t\tcase 'tag':\n\t\t\t/* translators: label for missing tag in navigation link block */\n\t\t\tmissingText = __( 'Select tag' );\n\t\t\tbreak;\n\t\tdefault:\n\t\t\t/* translators: label for missing values in navigation link block */\n\t\t\tmissingText = __( 'Add link' );\n\t}\n\n\treturn missingText;\n}\n\n/*\n * Warning, this duplicated in\n * packages/block-library/src/navigation-submenu/edit.js\n * Consider reuseing this components for both blocks.\n */\nfunction Controls( { attributes, setAttributes, setIsLabelFieldFocused } ) {\n\tconst { label, url, description, title, rel } = attributes;\n\treturn (\n\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t<TextControl\n\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t__next40pxDefaultSize\n\t\t\t\tvalue={ label ? stripHTML( label ) : '' }\n\t\t\t\tonChange={ ( labelValue ) => {\n\t\t\t\t\tsetAttributes( { label: labelValue } );\n\t\t\t\t} }\n\t\t\t\tlabel={ __( 'Text' ) }\n\t\t\t\tautoComplete=\"off\"\n\t\t\t\tonFocus={ () => setIsLabelFieldFocused( true ) }\n\t\t\t\tonBlur={ () => setIsLabelFieldFocused( false ) }\n\t\t\t/>\n\t\t\t<TextControl\n\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t__next40pxDefaultSize\n\t\t\t\tvalue={ url ? safeDecodeURI( url ) : '' }\n\t\t\t\tonChange={ ( urlValue ) => {\n\t\t\t\t\tupdateAttributes(\n\t\t\t\t\t\t{ url: urlValue },\n\t\t\t\t\t\tsetAttributes,\n\t\t\t\t\t\tattributes\n\t\t\t\t\t);\n\t\t\t\t} }\n\t\t\t\tlabel={ __( 'Link' ) }\n\t\t\t\tautoComplete=\"off\"\n\t\t\t/>\n\t\t\t<TextareaControl\n\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\tvalue={ description || '' }\n\t\t\t\tonChange={ ( descriptionValue ) => {\n\t\t\t\t\tsetAttributes( { description: descriptionValue } );\n\t\t\t\t} }\n\t\t\t\tlabel={ __( 'Description' ) }\n\t\t\t\thelp={ __(\n\t\t\t\t\t'The description will be displayed in the menu if the current theme supports it.'\n\t\t\t\t) }\n\t\t\t/>\n\t\t\t<TextControl\n\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t__next40pxDefaultSize\n\t\t\t\tvalue={ title || '' }\n\t\t\t\tonChange={ ( titleValue ) => {\n\t\t\t\t\tsetAttributes( { title: titleValue } );\n\t\t\t\t} }\n\t\t\t\tlabel={ __( 'Title attribute' ) }\n\t\t\t\tautoComplete=\"off\"\n\t\t\t\thelp={ __(\n\t\t\t\t\t'Additional information to help clarify the purpose of the link.'\n\t\t\t\t) }\n\t\t\t/>\n\t\t\t<TextControl\n\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t__next40pxDefaultSize\n\t\t\t\tvalue={ rel || '' }\n\t\t\t\tonChange={ ( relValue ) => {\n\t\t\t\t\tsetAttributes( { rel: relValue } );\n\t\t\t\t} }\n\t\t\t\tlabel={ __( 'Rel attribute' ) }\n\t\t\t\tautoComplete=\"off\"\n\t\t\t\thelp={ __(\n\t\t\t\t\t'The relationship of the linked URL as space-separated link types.'\n\t\t\t\t) }\n\t\t\t/>\n\t\t</PanelBody>\n\t);\n}\n\nexport default function NavigationLinkEdit( {\n\tattributes,\n\tisSelected,\n\tsetAttributes,\n\tinsertBlocksAfter,\n\tmergeBlocks,\n\tonReplace,\n\tcontext,\n\tclientId,\n} ) {\n\tconst { id, label, type, url, description, kind } = attributes;\n\n\tconst [ isInvalid, isDraft ] = useIsInvalidLink( kind, type, id );\n\tconst { maxNestingLevel } = context;\n\n\tconst {\n\t\treplaceBlock,\n\t\t__unstableMarkNextChangeAsNotPersistent,\n\t\tselectBlock,\n\t\tselectPreviousBlock,\n\t} = useDispatch( blockEditorStore );\n\t// Have the link editing ui open on mount when lacking a url and selected.\n\tconst [ isLinkOpen, setIsLinkOpen ] = useState( isSelected && ! url );\n\t// Store what element opened the popover, so we know where to return focus to (toolbar button vs navigation link text)\n\tconst [ openedBy, setOpenedBy ] = useState( null );\n\t// Use internal state instead of a ref to make sure that the component\n\t// re-renders when the popover's anchor updates.\n\tconst [ popoverAnchor, setPopoverAnchor ] = useState( null );\n\tconst listItemRef = useRef( null );\n\tconst isDraggingWithin = useIsDraggingWithin( listItemRef );\n\tconst itemLabelPlaceholder = __( 'Add label…' );\n\tconst ref = useRef();\n\tconst prevUrl = usePrevious( url );\n\n\t// Change the label using inspector causes rich text to change focus on firefox.\n\t// This is a workaround to keep the focus on the label field when label filed is focused we don't render the rich text.\n\tconst [ isLabelFieldFocused, setIsLabelFieldFocused ] = useState( false );\n\n\tconst {\n\t\tisAtMaxNesting,\n\t\tisTopLevelLink,\n\t\tisParentOfSelectedBlock,\n\t\thasChildren,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tgetBlockCount,\n\t\t\t\tgetBlockName,\n\t\t\t\tgetBlockRootClientId,\n\t\t\t\thasSelectedInnerBlock,\n\t\t\t\tgetBlockParentsByBlockName,\n\t\t\t} = select( blockEditorStore );\n\n\t\t\treturn {\n\t\t\t\tisAtMaxNesting:\n\t\t\t\t\tgetBlockParentsByBlockName( clientId, [\n\t\t\t\t\t\t'core/navigation-link',\n\t\t\t\t\t\t'core/navigation-submenu',\n\t\t\t\t\t] ).length >= maxNestingLevel,\n\t\t\t\tisTopLevelLink:\n\t\t\t\t\tgetBlockName( getBlockRootClientId( clientId ) ) ===\n\t\t\t\t\t'core/navigation',\n\t\t\t\tisParentOfSelectedBlock: hasSelectedInnerBlock(\n\t\t\t\t\tclientId,\n\t\t\t\t\ttrue\n\t\t\t\t),\n\t\t\t\thasChildren: !! getBlockCount( clientId ),\n\t\t\t};\n\t\t},\n\t\t[ clientId, maxNestingLevel ]\n\t);\n\tconst { getBlocks } = useSelect( blockEditorStore );\n\n\t/**\n\t * Transform to submenu block.\n\t */\n\tconst transformToSubmenu = () => {\n\t\tlet innerBlocks = getBlocks( clientId );\n\t\tif ( innerBlocks.length === 0 ) {\n\t\t\tinnerBlocks = [ createBlock( 'core/navigation-link' ) ];\n\t\t\tselectBlock( innerBlocks[ 0 ].clientId );\n\t\t}\n\t\tconst newSubmenu = createBlock(\n\t\t\t'core/navigation-submenu',\n\t\t\tattributes,\n\t\t\tinnerBlocks\n\t\t);\n\t\treplaceBlock( clientId, newSubmenu );\n\t};\n\n\tuseEffect( () => {\n\t\t// If block has inner blocks, transform to Submenu.\n\t\tif ( hasChildren ) {\n\t\t\t// This side-effect should not create an undo level as those should\n\t\t\t// only be created via user interactions.\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\ttransformToSubmenu();\n\t\t}\n\t}, [ hasChildren ] );\n\n\t// If the LinkControl popover is open and the URL has changed, close the LinkControl and focus the label text.\n\tuseEffect( () => {\n\t\t// We only want to do this when the URL has gone from nothing to a new URL AND the label looks like a URL\n\t\tif (\n\t\t\t! prevUrl &&\n\t\t\turl &&\n\t\t\tisLinkOpen &&\n\t\t\tisURL( prependHTTP( label ) ) &&\n\t\t\t/^.+\\.[a-z]+/.test( label )\n\t\t) {\n\t\t\t// Focus and select the label text.\n\t\t\tselectLabelText();\n\t\t}\n\t}, [ prevUrl, url, isLinkOpen, label ] );\n\n\t/**\n\t * Focus the Link label text and select it.\n\t */\n\tfunction selectLabelText() {\n\t\tref.current.focus();\n\t\tconst { ownerDocument } = ref.current;\n\t\tconst { defaultView } = ownerDocument;\n\t\tconst selection = defaultView.getSelection();\n\t\tconst range = ownerDocument.createRange();\n\t\t// Get the range of the current ref contents so we can add this range to the selection.\n\t\trange.selectNodeContents( ref.current );\n\t\tselection.removeAllRanges();\n\t\tselection.addRange( range );\n\t}\n\n\t/**\n\t * Removes the current link if set.\n\t */\n\tfunction removeLink() {\n\t\t// Reset all attributes that comprise the link.\n\t\t// It is critical that all attributes are reset\n\t\t// to their default values otherwise this may\n\t\t// in advertently trigger side effects because\n\t\t// the values will have \"changed\".\n\t\tsetAttributes( {\n\t\t\turl: undefined,\n\t\t\tlabel: undefined,\n\t\t\tid: undefined,\n\t\t\tkind: undefined,\n\t\t\ttype: undefined,\n\t\t\topensInNewTab: false,\n\t\t} );\n\n\t\t// Close the link editing UI.\n\t\tsetIsLinkOpen( false );\n\t}\n\n\tconst {\n\t\ttextColor,\n\t\tcustomTextColor,\n\t\tbackgroundColor,\n\t\tcustomBackgroundColor,\n\t} = getColors( context, ! isTopLevelLink );\n\n\tfunction onKeyDown( event ) {\n\t\tif ( isKeyboardEvent.primary( event, 'k' ) ) {\n\t\t\t// Required to prevent the command center from opening,\n\t\t\t// as it shares the CMD+K shortcut.\n\t\t\t// See https://github.com/WordPress/gutenberg/pull/59845.\n\t\t\tevent.preventDefault();\n\t\t\t// If this link is a child of a parent submenu item, the parent submenu item event will also open, closing this popover\n\t\t\tevent.stopPropagation();\n\t\t\tsetIsLinkOpen( true );\n\t\t\tsetOpenedBy( ref.current );\n\t\t}\n\t}\n\n\tconst blockProps = useBlockProps( {\n\t\tref: useMergeRefs( [ setPopoverAnchor, listItemRef ] ),\n\t\tclassName: classnames( 'wp-block-navigation-item', {\n\t\t\t'is-editing': isSelected || isParentOfSelectedBlock,\n\t\t\t'is-dragging-within': isDraggingWithin,\n\t\t\t'has-link': !! url,\n\t\t\t'has-child': hasChildren,\n\t\t\t'has-text-color': !! textColor || !! customTextColor,\n\t\t\t[ getColorClassName( 'color', textColor ) ]: !! textColor,\n\t\t\t'has-background': !! backgroundColor || customBackgroundColor,\n\t\t\t[ getColorClassName( 'background-color', backgroundColor ) ]:\n\t\t\t\t!! backgroundColor,\n\t\t} ),\n\t\tstyle: {\n\t\t\tcolor: ! textColor && customTextColor,\n\t\t\tbackgroundColor: ! backgroundColor && customBackgroundColor,\n\t\t},\n\t\tonKeyDown,\n\t} );\n\n\tconst innerBlocksProps = useInnerBlocksProps(\n\t\t{\n\t\t\t...blockProps,\n\t\t\tclassName: 'remove-outline', // Remove the outline from the inner blocks container.\n\t\t},\n\t\t{\n\t\t\tdefaultBlock: DEFAULT_BLOCK,\n\t\t\tdirectInsert: true,\n\t\t\trenderAppender: false,\n\t\t}\n\t);\n\n\tif ( ! url || isInvalid || isDraft ) {\n\t\tblockProps.onClick = () => {\n\t\t\tsetIsLinkOpen( true );\n\t\t\tsetOpenedBy( ref.current );\n\t\t};\n\t}\n\n\tconst classes = classnames( 'wp-block-navigation-item__content', {\n\t\t'wp-block-navigation-link__placeholder': ! url || isInvalid || isDraft,\n\t} );\n\n\tconst missingText = getMissingText( type );\n\t/* translators: Whether the navigation link is Invalid or a Draft. */\n\tconst placeholderText = `(${\n\t\tisInvalid ? __( 'Invalid' ) : __( 'Draft' )\n\t})`;\n\tconst tooltipText =\n\t\tisInvalid || isDraft\n\t\t\t? __( 'This item has been deleted, or is a draft' )\n\t\t\t: __( 'This item is missing a link' );\n\n\treturn (\n\t\t<>\n\t\t\t<BlockControls>\n\t\t\t\t<ToolbarGroup>\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\tname=\"link\"\n\t\t\t\t\t\ticon={ linkIcon }\n\t\t\t\t\t\ttitle={ __( 'Link' ) }\n\t\t\t\t\t\tshortcut={ displayShortcut.primary( 'k' ) }\n\t\t\t\t\t\tonClick={ ( event ) => {\n\t\t\t\t\t\t\tsetIsLinkOpen( true );\n\t\t\t\t\t\t\tsetOpenedBy( event.currentTarget );\n\t\t\t\t\t\t} }\n\t\t\t\t\t/>\n\t\t\t\t\t{ ! isAtMaxNesting && (\n\t\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\t\tname=\"submenu\"\n\t\t\t\t\t\t\ticon={ addSubmenu }\n\t\t\t\t\t\t\ttitle={ __( 'Add submenu' ) }\n\t\t\t\t\t\t\tonClick={ transformToSubmenu }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</ToolbarGroup>\n\t\t\t</BlockControls>\n\t\t\t{ /* Warning, this duplicated in packages/block-library/src/navigation-submenu/edit.js */ }\n\t\t\t<InspectorControls>\n\t\t\t\t<Controls\n\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\tsetIsLabelFieldFocused={ setIsLabelFieldFocused }\n\t\t\t\t/>\n\t\t\t</InspectorControls>\n\t\t\t<div { ...blockProps }>\n\t\t\t\t{ /* eslint-disable jsx-a11y/anchor-is-valid */ }\n\t\t\t\t<a className={ classes }>\n\t\t\t\t\t{ /* eslint-enable */ }\n\t\t\t\t\t{ ! url ? (\n\t\t\t\t\t\t<div className=\"wp-block-navigation-link__placeholder-text\">\n\t\t\t\t\t\t\t<Tooltip text={ tooltipText }>\n\t\t\t\t\t\t\t\t<span>{ missingText }</span>\n\t\t\t\t\t\t\t</Tooltip>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t) : (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t{ ! isInvalid &&\n\t\t\t\t\t\t\t\t! isDraft &&\n\t\t\t\t\t\t\t\t! isLabelFieldFocused && (\n\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t<RichText\n\t\t\t\t\t\t\t\t\t\t\tref={ ref }\n\t\t\t\t\t\t\t\t\t\t\tidentifier=\"label\"\n\t\t\t\t\t\t\t\t\t\t\tclassName=\"wp-block-navigation-item__label\"\n\t\t\t\t\t\t\t\t\t\t\tvalue={ label }\n\t\t\t\t\t\t\t\t\t\t\tonChange={ ( labelValue ) =>\n\t\t\t\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\t\t\t\tlabel: labelValue,\n\t\t\t\t\t\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\tonMerge={ mergeBlocks }\n\t\t\t\t\t\t\t\t\t\t\tonReplace={ onReplace }\n\t\t\t\t\t\t\t\t\t\t\t__unstableOnSplitAtEnd={ () =>\n\t\t\t\t\t\t\t\t\t\t\t\tinsertBlocksAfter(\n\t\t\t\t\t\t\t\t\t\t\t\t\tcreateBlock(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t'core/navigation-link'\n\t\t\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\taria-label={ __(\n\t\t\t\t\t\t\t\t\t\t\t\t'Navigation link text'\n\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t\tplaceholder={ itemLabelPlaceholder }\n\t\t\t\t\t\t\t\t\t\t\twithoutInteractiveFormatting\n\t\t\t\t\t\t\t\t\t\t\tallowedFormats={ [\n\t\t\t\t\t\t\t\t\t\t\t\t'core/bold',\n\t\t\t\t\t\t\t\t\t\t\t\t'core/italic',\n\t\t\t\t\t\t\t\t\t\t\t\t'core/image',\n\t\t\t\t\t\t\t\t\t\t\t\t'core/strikethrough',\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\t{ description && (\n\t\t\t\t\t\t\t\t\t\t\t<span className=\"wp-block-navigation-item__description\">\n\t\t\t\t\t\t\t\t\t\t\t\t{ description }\n\t\t\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t{ ( isInvalid ||\n\t\t\t\t\t\t\t\tisDraft ||\n\t\t\t\t\t\t\t\tisLabelFieldFocused ) && (\n\t\t\t\t\t\t\t\t<div className=\"wp-block-navigation-link__placeholder-text wp-block-navigation-link__label\">\n\t\t\t\t\t\t\t\t\t<Tooltip text={ tooltipText }>\n\t\t\t\t\t\t\t\t\t\t<span\n\t\t\t\t\t\t\t\t\t\t\taria-label={ __(\n\t\t\t\t\t\t\t\t\t\t\t\t'Navigation link text'\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\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\t// Some attributes are stored in an escaped form. It's a legacy issue.\n\t\t\t\t\t\t\t\t\t\t\t\t// Ideally they would be stored in a raw, unescaped form.\n\t\t\t\t\t\t\t\t\t\t\t\t// Unescape is used here to \"recover\" the escaped characters\n\t\t\t\t\t\t\t\t\t\t\t\t// so they display without encoding.\n\t\t\t\t\t\t\t\t\t\t\t\t// See `updateAttributes` for more details.\n\t\t\t\t\t\t\t\t\t\t\t\t`${ decodeEntities( label ) } ${\n\t\t\t\t\t\t\t\t\t\t\t\t\tisInvalid || isDraft\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t? placeholderText\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t: ''\n\t\t\t\t\t\t\t\t\t\t\t\t}`.trim()\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t</Tooltip>\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</>\n\t\t\t\t\t) }\n\t\t\t\t\t{ isLinkOpen && (\n\t\t\t\t\t\t<LinkUI\n\t\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\t\tlink={ attributes }\n\t\t\t\t\t\t\tonClose={ () => {\n\t\t\t\t\t\t\t\t// If there is no link then remove the auto-inserted block.\n\t\t\t\t\t\t\t\t// This avoids empty blocks which can provided a poor UX.\n\t\t\t\t\t\t\t\tif ( ! url ) {\n\t\t\t\t\t\t\t\t\t// Select the previous block to keep focus nearby\n\t\t\t\t\t\t\t\t\tselectPreviousBlock( clientId, true );\n\t\t\t\t\t\t\t\t\t// Remove the link.\n\t\t\t\t\t\t\t\t\tonReplace( [] );\n\t\t\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\tsetIsLinkOpen( false );\n\t\t\t\t\t\t\t\tif ( openedBy ) {\n\t\t\t\t\t\t\t\t\topenedBy.focus();\n\t\t\t\t\t\t\t\t\tsetOpenedBy( null );\n\t\t\t\t\t\t\t\t} else if ( ref.current ) {\n\t\t\t\t\t\t\t\t\t// select the ref when adding a new link\n\t\t\t\t\t\t\t\t\tref.current.focus();\n\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t// Fallback\n\t\t\t\t\t\t\t\t\tselectPreviousBlock( clientId, true );\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tanchor={ popoverAnchor }\n\t\t\t\t\t\t\tonRemove={ removeLink }\n\t\t\t\t\t\t\tonChange={ ( updatedValue ) => {\n\t\t\t\t\t\t\t\tupdateAttributes(\n\t\t\t\t\t\t\t\t\tupdatedValue,\n\t\t\t\t\t\t\t\t\tsetAttributes,\n\t\t\t\t\t\t\t\t\tattributes\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</a>\n\t\t\t\t<div { ...innerBlocksProps } />\n\t\t\t</div>\n\t\t</>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_clsx","_interopRequireDefault","require","_blocks","_data","_components","_keycodes","_i18n","_blockEditor","_url","_element","_dom","_htmlEntities","_icons","_coreData","_compose","_linkUi","_updateAttributes","_utils","DEFAULT_BLOCK","name","useIsDraggingWithin","elementRef","isDraggingWithin","setIsDraggingWithin","useState","useEffect","ownerDocument","current","handleDragStart","event","handleDragEnter","handleDragEnd","contains","target","addEventListener","removeEventListener","useIsInvalidLink","kind","type","id","isPostType","hasId","Number","isInteger","postStatus","useSelect","select","getEntityRecord","coreStore","status","isInvalid","isDraft","getMissingText","missingText","__","Controls","attributes","setAttributes","setIsLabelFieldFocused","label","url","description","title","rel","_react","createElement","PanelBody","TextControl","__nextHasNoMarginBottom","__next40pxDefaultSize","value","stripHTML","onChange","labelValue","autoComplete","onFocus","onBlur","safeDecodeURI","urlValue","updateAttributes","TextareaControl","descriptionValue","help","titleValue","relValue","NavigationLinkEdit","isSelected","insertBlocksAfter","mergeBlocks","onReplace","context","clientId","maxNestingLevel","replaceBlock","__unstableMarkNextChangeAsNotPersistent","selectBlock","selectPreviousBlock","useDispatch","blockEditorStore","isLinkOpen","setIsLinkOpen","openedBy","setOpenedBy","popoverAnchor","setPopoverAnchor","listItemRef","useRef","itemLabelPlaceholder","ref","prevUrl","usePrevious","isLabelFieldFocused","isAtMaxNesting","isTopLevelLink","isParentOfSelectedBlock","hasChildren","getBlockCount","getBlockName","getBlockRootClientId","hasSelectedInnerBlock","getBlockParentsByBlockName","length","getBlocks","transformToSubmenu","innerBlocks","createBlock","newSubmenu","isURL","prependHTTP","test","selectLabelText","focus","defaultView","selection","getSelection","range","createRange","selectNodeContents","removeAllRanges","addRange","removeLink","undefined","opensInNewTab","textColor","customTextColor","backgroundColor","customBackgroundColor","getColors","onKeyDown","isKeyboardEvent","primary","preventDefault","stopPropagation","blockProps","useBlockProps","useMergeRefs","className","clsx","getColorClassName","style","color","innerBlocksProps","useInnerBlocksProps","defaultBlock","directInsert","renderAppender","onClick","classes","placeholderText","tooltipText","Fragment","BlockControls","ToolbarGroup","ToolbarButton","icon","linkIcon","shortcut","displayShortcut","currentTarget","addSubmenu","InspectorControls","Tooltip","text","RichText","identifier","onMerge","__unstableOnSplitAtEnd","placeholder","withoutInteractiveFormatting","allowedFormats","decodeEntities","trim","LinkUI","link","onClose","anchor","onRemove","updatedValue"],"sources":["@wordpress/block-library/src/navigation-link/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { createBlock } from '@wordpress/blocks';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport {\n\tPanelBody,\n\tTextControl,\n\tTextareaControl,\n\tToolbarButton,\n\tTooltip,\n\tToolbarGroup,\n} from '@wordpress/components';\nimport { displayShortcut, isKeyboardEvent } from '@wordpress/keycodes';\nimport { __ } from '@wordpress/i18n';\nimport {\n\tBlockControls,\n\tInspectorControls,\n\tRichText,\n\tuseBlockProps,\n\tstore as blockEditorStore,\n\tgetColorClassName,\n\tuseInnerBlocksProps,\n} from '@wordpress/block-editor';\nimport { isURL, prependHTTP, safeDecodeURI } from '@wordpress/url';\nimport { useState, useEffect, useRef } from '@wordpress/element';\nimport { __unstableStripHTML as stripHTML } from '@wordpress/dom';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { link as linkIcon, addSubmenu } from '@wordpress/icons';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { useMergeRefs, usePrevious } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport { LinkUI } from './link-ui';\nimport { updateAttributes } from './update-attributes';\nimport { getColors } from '../navigation/edit/utils';\n\nconst DEFAULT_BLOCK = { name: 'core/navigation-link' };\n\n/**\n * A React hook to determine if it's dragging within the target element.\n *\n * @typedef {import('@wordpress/element').RefObject} RefObject\n *\n * @param {RefObject<HTMLElement>} elementRef The target elementRef object.\n *\n * @return {boolean} Is dragging within the target element.\n */\nconst useIsDraggingWithin = ( elementRef ) => {\n\tconst [ isDraggingWithin, setIsDraggingWithin ] = useState( false );\n\n\tuseEffect( () => {\n\t\tconst { ownerDocument } = elementRef.current;\n\n\t\tfunction handleDragStart( event ) {\n\t\t\t// Check the first time when the dragging starts.\n\t\t\thandleDragEnter( event );\n\t\t}\n\n\t\t// Set to false whenever the user cancel the drag event by either releasing the mouse or press Escape.\n\t\tfunction handleDragEnd() {\n\t\t\tsetIsDraggingWithin( false );\n\t\t}\n\n\t\tfunction handleDragEnter( event ) {\n\t\t\t// Check if the current target is inside the item element.\n\t\t\tif ( elementRef.current.contains( event.target ) ) {\n\t\t\t\tsetIsDraggingWithin( true );\n\t\t\t} else {\n\t\t\t\tsetIsDraggingWithin( false );\n\t\t\t}\n\t\t}\n\n\t\t// Bind these events to the document to catch all drag events.\n\t\t// Ideally, we can also use `event.relatedTarget`, but sadly that\n\t\t// doesn't work in Safari.\n\t\townerDocument.addEventListener( 'dragstart', handleDragStart );\n\t\townerDocument.addEventListener( 'dragend', handleDragEnd );\n\t\townerDocument.addEventListener( 'dragenter', handleDragEnter );\n\n\t\treturn () => {\n\t\t\townerDocument.removeEventListener( 'dragstart', handleDragStart );\n\t\t\townerDocument.removeEventListener( 'dragend', handleDragEnd );\n\t\t\townerDocument.removeEventListener( 'dragenter', handleDragEnter );\n\t\t};\n\t}, [ elementRef ] );\n\n\treturn isDraggingWithin;\n};\n\nconst useIsInvalidLink = ( kind, type, id ) => {\n\tconst isPostType =\n\t\tkind === 'post-type' || type === 'post' || type === 'page';\n\tconst hasId = Number.isInteger( id );\n\tconst postStatus = useSelect(\n\t\t( select ) => {\n\t\t\tif ( ! isPostType ) {\n\t\t\t\treturn null;\n\t\t\t}\n\t\t\tconst { getEntityRecord } = select( coreStore );\n\t\t\treturn getEntityRecord( 'postType', type, id )?.status;\n\t\t},\n\t\t[ isPostType, type, id ]\n\t);\n\n\t// Check Navigation Link validity if:\n\t// 1. Link is 'post-type'.\n\t// 2. It has an id.\n\t// 3. It's neither null, nor undefined, as valid items might be either of those while loading.\n\t// If those conditions are met, check if\n\t// 1. The post status is published.\n\t// 2. The Navigation Link item has no label.\n\t// If either of those is true, invalidate.\n\tconst isInvalid =\n\t\tisPostType && hasId && postStatus && 'trash' === postStatus;\n\tconst isDraft = 'draft' === postStatus;\n\n\treturn [ isInvalid, isDraft ];\n};\n\nfunction getMissingText( type ) {\n\tlet missingText = '';\n\n\tswitch ( type ) {\n\t\tcase 'post':\n\t\t\t/* translators: label for missing post in navigation link block */\n\t\t\tmissingText = __( 'Select post' );\n\t\t\tbreak;\n\t\tcase 'page':\n\t\t\t/* translators: label for missing page in navigation link block */\n\t\t\tmissingText = __( 'Select page' );\n\t\t\tbreak;\n\t\tcase 'category':\n\t\t\t/* translators: label for missing category in navigation link block */\n\t\t\tmissingText = __( 'Select category' );\n\t\t\tbreak;\n\t\tcase 'tag':\n\t\t\t/* translators: label for missing tag in navigation link block */\n\t\t\tmissingText = __( 'Select tag' );\n\t\t\tbreak;\n\t\tdefault:\n\t\t\t/* translators: label for missing values in navigation link block */\n\t\t\tmissingText = __( 'Add link' );\n\t}\n\n\treturn missingText;\n}\n\n/*\n * Warning, this duplicated in\n * packages/block-library/src/navigation-submenu/edit.js\n * Consider reuseing this components for both blocks.\n */\nfunction Controls( { attributes, setAttributes, setIsLabelFieldFocused } ) {\n\tconst { label, url, description, title, rel } = attributes;\n\treturn (\n\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t<TextControl\n\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t__next40pxDefaultSize\n\t\t\t\tvalue={ label ? stripHTML( label ) : '' }\n\t\t\t\tonChange={ ( labelValue ) => {\n\t\t\t\t\tsetAttributes( { label: labelValue } );\n\t\t\t\t} }\n\t\t\t\tlabel={ __( 'Text' ) }\n\t\t\t\tautoComplete=\"off\"\n\t\t\t\tonFocus={ () => setIsLabelFieldFocused( true ) }\n\t\t\t\tonBlur={ () => setIsLabelFieldFocused( false ) }\n\t\t\t/>\n\t\t\t<TextControl\n\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t__next40pxDefaultSize\n\t\t\t\tvalue={ url ? safeDecodeURI( url ) : '' }\n\t\t\t\tonChange={ ( urlValue ) => {\n\t\t\t\t\tupdateAttributes(\n\t\t\t\t\t\t{ url: urlValue },\n\t\t\t\t\t\tsetAttributes,\n\t\t\t\t\t\tattributes\n\t\t\t\t\t);\n\t\t\t\t} }\n\t\t\t\tlabel={ __( 'Link' ) }\n\t\t\t\tautoComplete=\"off\"\n\t\t\t/>\n\t\t\t<TextareaControl\n\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\tvalue={ description || '' }\n\t\t\t\tonChange={ ( descriptionValue ) => {\n\t\t\t\t\tsetAttributes( { description: descriptionValue } );\n\t\t\t\t} }\n\t\t\t\tlabel={ __( 'Description' ) }\n\t\t\t\thelp={ __(\n\t\t\t\t\t'The description will be displayed in the menu if the current theme supports it.'\n\t\t\t\t) }\n\t\t\t/>\n\t\t\t<TextControl\n\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t__next40pxDefaultSize\n\t\t\t\tvalue={ title || '' }\n\t\t\t\tonChange={ ( titleValue ) => {\n\t\t\t\t\tsetAttributes( { title: titleValue } );\n\t\t\t\t} }\n\t\t\t\tlabel={ __( 'Title attribute' ) }\n\t\t\t\tautoComplete=\"off\"\n\t\t\t\thelp={ __(\n\t\t\t\t\t'Additional information to help clarify the purpose of the link.'\n\t\t\t\t) }\n\t\t\t/>\n\t\t\t<TextControl\n\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t__next40pxDefaultSize\n\t\t\t\tvalue={ rel || '' }\n\t\t\t\tonChange={ ( relValue ) => {\n\t\t\t\t\tsetAttributes( { rel: relValue } );\n\t\t\t\t} }\n\t\t\t\tlabel={ __( 'Rel attribute' ) }\n\t\t\t\tautoComplete=\"off\"\n\t\t\t\thelp={ __(\n\t\t\t\t\t'The relationship of the linked URL as space-separated link types.'\n\t\t\t\t) }\n\t\t\t/>\n\t\t</PanelBody>\n\t);\n}\n\nexport default function NavigationLinkEdit( {\n\tattributes,\n\tisSelected,\n\tsetAttributes,\n\tinsertBlocksAfter,\n\tmergeBlocks,\n\tonReplace,\n\tcontext,\n\tclientId,\n} ) {\n\tconst { id, label, type, url, description, kind } = attributes;\n\n\tconst [ isInvalid, isDraft ] = useIsInvalidLink( kind, type, id );\n\tconst { maxNestingLevel } = context;\n\n\tconst {\n\t\treplaceBlock,\n\t\t__unstableMarkNextChangeAsNotPersistent,\n\t\tselectBlock,\n\t\tselectPreviousBlock,\n\t} = useDispatch( blockEditorStore );\n\t// Have the link editing ui open on mount when lacking a url and selected.\n\tconst [ isLinkOpen, setIsLinkOpen ] = useState( isSelected && ! url );\n\t// Store what element opened the popover, so we know where to return focus to (toolbar button vs navigation link text)\n\tconst [ openedBy, setOpenedBy ] = useState( null );\n\t// Use internal state instead of a ref to make sure that the component\n\t// re-renders when the popover's anchor updates.\n\tconst [ popoverAnchor, setPopoverAnchor ] = useState( null );\n\tconst listItemRef = useRef( null );\n\tconst isDraggingWithin = useIsDraggingWithin( listItemRef );\n\tconst itemLabelPlaceholder = __( 'Add label…' );\n\tconst ref = useRef();\n\tconst prevUrl = usePrevious( url );\n\n\t// Change the label using inspector causes rich text to change focus on firefox.\n\t// This is a workaround to keep the focus on the label field when label filed is focused we don't render the rich text.\n\tconst [ isLabelFieldFocused, setIsLabelFieldFocused ] = useState( false );\n\n\tconst {\n\t\tisAtMaxNesting,\n\t\tisTopLevelLink,\n\t\tisParentOfSelectedBlock,\n\t\thasChildren,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tgetBlockCount,\n\t\t\t\tgetBlockName,\n\t\t\t\tgetBlockRootClientId,\n\t\t\t\thasSelectedInnerBlock,\n\t\t\t\tgetBlockParentsByBlockName,\n\t\t\t} = select( blockEditorStore );\n\n\t\t\treturn {\n\t\t\t\tisAtMaxNesting:\n\t\t\t\t\tgetBlockParentsByBlockName( clientId, [\n\t\t\t\t\t\t'core/navigation-link',\n\t\t\t\t\t\t'core/navigation-submenu',\n\t\t\t\t\t] ).length >= maxNestingLevel,\n\t\t\t\tisTopLevelLink:\n\t\t\t\t\tgetBlockName( getBlockRootClientId( clientId ) ) ===\n\t\t\t\t\t'core/navigation',\n\t\t\t\tisParentOfSelectedBlock: hasSelectedInnerBlock(\n\t\t\t\t\tclientId,\n\t\t\t\t\ttrue\n\t\t\t\t),\n\t\t\t\thasChildren: !! getBlockCount( clientId ),\n\t\t\t};\n\t\t},\n\t\t[ clientId, maxNestingLevel ]\n\t);\n\tconst { getBlocks } = useSelect( blockEditorStore );\n\n\t/**\n\t * Transform to submenu block.\n\t */\n\tconst transformToSubmenu = () => {\n\t\tlet innerBlocks = getBlocks( clientId );\n\t\tif ( innerBlocks.length === 0 ) {\n\t\t\tinnerBlocks = [ createBlock( 'core/navigation-link' ) ];\n\t\t\tselectBlock( innerBlocks[ 0 ].clientId );\n\t\t}\n\t\tconst newSubmenu = createBlock(\n\t\t\t'core/navigation-submenu',\n\t\t\tattributes,\n\t\t\tinnerBlocks\n\t\t);\n\t\treplaceBlock( clientId, newSubmenu );\n\t};\n\n\tuseEffect( () => {\n\t\t// If block has inner blocks, transform to Submenu.\n\t\tif ( hasChildren ) {\n\t\t\t// This side-effect should not create an undo level as those should\n\t\t\t// only be created via user interactions.\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\ttransformToSubmenu();\n\t\t}\n\t}, [ hasChildren ] );\n\n\t// If the LinkControl popover is open and the URL has changed, close the LinkControl and focus the label text.\n\tuseEffect( () => {\n\t\t// We only want to do this when the URL has gone from nothing to a new URL AND the label looks like a URL\n\t\tif (\n\t\t\t! prevUrl &&\n\t\t\turl &&\n\t\t\tisLinkOpen &&\n\t\t\tisURL( prependHTTP( label ) ) &&\n\t\t\t/^.+\\.[a-z]+/.test( label )\n\t\t) {\n\t\t\t// Focus and select the label text.\n\t\t\tselectLabelText();\n\t\t}\n\t}, [ prevUrl, url, isLinkOpen, label ] );\n\n\t/**\n\t * Focus the Link label text and select it.\n\t */\n\tfunction selectLabelText() {\n\t\tref.current.focus();\n\t\tconst { ownerDocument } = ref.current;\n\t\tconst { defaultView } = ownerDocument;\n\t\tconst selection = defaultView.getSelection();\n\t\tconst range = ownerDocument.createRange();\n\t\t// Get the range of the current ref contents so we can add this range to the selection.\n\t\trange.selectNodeContents( ref.current );\n\t\tselection.removeAllRanges();\n\t\tselection.addRange( range );\n\t}\n\n\t/**\n\t * Removes the current link if set.\n\t */\n\tfunction removeLink() {\n\t\t// Reset all attributes that comprise the link.\n\t\t// It is critical that all attributes are reset\n\t\t// to their default values otherwise this may\n\t\t// in advertently trigger side effects because\n\t\t// the values will have \"changed\".\n\t\tsetAttributes( {\n\t\t\turl: undefined,\n\t\t\tlabel: undefined,\n\t\t\tid: undefined,\n\t\t\tkind: undefined,\n\t\t\ttype: undefined,\n\t\t\topensInNewTab: false,\n\t\t} );\n\n\t\t// Close the link editing UI.\n\t\tsetIsLinkOpen( false );\n\t}\n\n\tconst {\n\t\ttextColor,\n\t\tcustomTextColor,\n\t\tbackgroundColor,\n\t\tcustomBackgroundColor,\n\t} = getColors( context, ! isTopLevelLink );\n\n\tfunction onKeyDown( event ) {\n\t\tif ( isKeyboardEvent.primary( event, 'k' ) ) {\n\t\t\t// Required to prevent the command center from opening,\n\t\t\t// as it shares the CMD+K shortcut.\n\t\t\t// See https://github.com/WordPress/gutenberg/pull/59845.\n\t\t\tevent.preventDefault();\n\t\t\t// If this link is a child of a parent submenu item, the parent submenu item event will also open, closing this popover\n\t\t\tevent.stopPropagation();\n\t\t\tsetIsLinkOpen( true );\n\t\t\tsetOpenedBy( ref.current );\n\t\t}\n\t}\n\n\tconst blockProps = useBlockProps( {\n\t\tref: useMergeRefs( [ setPopoverAnchor, listItemRef ] ),\n\t\tclassName: clsx( 'wp-block-navigation-item', {\n\t\t\t'is-editing': isSelected || isParentOfSelectedBlock,\n\t\t\t'is-dragging-within': isDraggingWithin,\n\t\t\t'has-link': !! url,\n\t\t\t'has-child': hasChildren,\n\t\t\t'has-text-color': !! textColor || !! customTextColor,\n\t\t\t[ getColorClassName( 'color', textColor ) ]: !! textColor,\n\t\t\t'has-background': !! backgroundColor || customBackgroundColor,\n\t\t\t[ getColorClassName( 'background-color', backgroundColor ) ]:\n\t\t\t\t!! backgroundColor,\n\t\t} ),\n\t\tstyle: {\n\t\t\tcolor: ! textColor && customTextColor,\n\t\t\tbackgroundColor: ! backgroundColor && customBackgroundColor,\n\t\t},\n\t\tonKeyDown,\n\t} );\n\n\tconst innerBlocksProps = useInnerBlocksProps(\n\t\t{\n\t\t\t...blockProps,\n\t\t\tclassName: 'remove-outline', // Remove the outline from the inner blocks container.\n\t\t},\n\t\t{\n\t\t\tdefaultBlock: DEFAULT_BLOCK,\n\t\t\tdirectInsert: true,\n\t\t\trenderAppender: false,\n\t\t}\n\t);\n\n\tif ( ! url || isInvalid || isDraft ) {\n\t\tblockProps.onClick = () => {\n\t\t\tsetIsLinkOpen( true );\n\t\t\tsetOpenedBy( ref.current );\n\t\t};\n\t}\n\n\tconst classes = clsx( 'wp-block-navigation-item__content', {\n\t\t'wp-block-navigation-link__placeholder': ! url || isInvalid || isDraft,\n\t} );\n\n\tconst missingText = getMissingText( type );\n\t/* translators: Whether the navigation link is Invalid or a Draft. */\n\tconst placeholderText = `(${\n\t\tisInvalid ? __( 'Invalid' ) : __( 'Draft' )\n\t})`;\n\tconst tooltipText =\n\t\tisInvalid || isDraft\n\t\t\t? __( 'This item has been deleted, or is a draft' )\n\t\t\t: __( 'This item is missing a link' );\n\n\treturn (\n\t\t<>\n\t\t\t<BlockControls>\n\t\t\t\t<ToolbarGroup>\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\tname=\"link\"\n\t\t\t\t\t\ticon={ linkIcon }\n\t\t\t\t\t\ttitle={ __( 'Link' ) }\n\t\t\t\t\t\tshortcut={ displayShortcut.primary( 'k' ) }\n\t\t\t\t\t\tonClick={ ( event ) => {\n\t\t\t\t\t\t\tsetIsLinkOpen( true );\n\t\t\t\t\t\t\tsetOpenedBy( event.currentTarget );\n\t\t\t\t\t\t} }\n\t\t\t\t\t/>\n\t\t\t\t\t{ ! isAtMaxNesting && (\n\t\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\t\tname=\"submenu\"\n\t\t\t\t\t\t\ticon={ addSubmenu }\n\t\t\t\t\t\t\ttitle={ __( 'Add submenu' ) }\n\t\t\t\t\t\t\tonClick={ transformToSubmenu }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</ToolbarGroup>\n\t\t\t</BlockControls>\n\t\t\t{ /* Warning, this duplicated in packages/block-library/src/navigation-submenu/edit.js */ }\n\t\t\t<InspectorControls>\n\t\t\t\t<Controls\n\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\tsetIsLabelFieldFocused={ setIsLabelFieldFocused }\n\t\t\t\t/>\n\t\t\t</InspectorControls>\n\t\t\t<div { ...blockProps }>\n\t\t\t\t{ /* eslint-disable jsx-a11y/anchor-is-valid */ }\n\t\t\t\t<a className={ classes }>\n\t\t\t\t\t{ /* eslint-enable */ }\n\t\t\t\t\t{ ! url ? (\n\t\t\t\t\t\t<div className=\"wp-block-navigation-link__placeholder-text\">\n\t\t\t\t\t\t\t<Tooltip text={ tooltipText }>\n\t\t\t\t\t\t\t\t<span>{ missingText }</span>\n\t\t\t\t\t\t\t</Tooltip>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t) : (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t{ ! isInvalid &&\n\t\t\t\t\t\t\t\t! isDraft &&\n\t\t\t\t\t\t\t\t! isLabelFieldFocused && (\n\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t<RichText\n\t\t\t\t\t\t\t\t\t\t\tref={ ref }\n\t\t\t\t\t\t\t\t\t\t\tidentifier=\"label\"\n\t\t\t\t\t\t\t\t\t\t\tclassName=\"wp-block-navigation-item__label\"\n\t\t\t\t\t\t\t\t\t\t\tvalue={ label }\n\t\t\t\t\t\t\t\t\t\t\tonChange={ ( labelValue ) =>\n\t\t\t\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\t\t\t\tlabel: labelValue,\n\t\t\t\t\t\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\tonMerge={ mergeBlocks }\n\t\t\t\t\t\t\t\t\t\t\tonReplace={ onReplace }\n\t\t\t\t\t\t\t\t\t\t\t__unstableOnSplitAtEnd={ () =>\n\t\t\t\t\t\t\t\t\t\t\t\tinsertBlocksAfter(\n\t\t\t\t\t\t\t\t\t\t\t\t\tcreateBlock(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t'core/navigation-link'\n\t\t\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\taria-label={ __(\n\t\t\t\t\t\t\t\t\t\t\t\t'Navigation link text'\n\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t\tplaceholder={ itemLabelPlaceholder }\n\t\t\t\t\t\t\t\t\t\t\twithoutInteractiveFormatting\n\t\t\t\t\t\t\t\t\t\t\tallowedFormats={ [\n\t\t\t\t\t\t\t\t\t\t\t\t'core/bold',\n\t\t\t\t\t\t\t\t\t\t\t\t'core/italic',\n\t\t\t\t\t\t\t\t\t\t\t\t'core/image',\n\t\t\t\t\t\t\t\t\t\t\t\t'core/strikethrough',\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\t{ description && (\n\t\t\t\t\t\t\t\t\t\t\t<span className=\"wp-block-navigation-item__description\">\n\t\t\t\t\t\t\t\t\t\t\t\t{ description }\n\t\t\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t{ ( isInvalid ||\n\t\t\t\t\t\t\t\tisDraft ||\n\t\t\t\t\t\t\t\tisLabelFieldFocused ) && (\n\t\t\t\t\t\t\t\t<div className=\"wp-block-navigation-link__placeholder-text wp-block-navigation-link__label\">\n\t\t\t\t\t\t\t\t\t<Tooltip text={ tooltipText }>\n\t\t\t\t\t\t\t\t\t\t<span\n\t\t\t\t\t\t\t\t\t\t\taria-label={ __(\n\t\t\t\t\t\t\t\t\t\t\t\t'Navigation link text'\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\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\t// Some attributes are stored in an escaped form. It's a legacy issue.\n\t\t\t\t\t\t\t\t\t\t\t\t// Ideally they would be stored in a raw, unescaped form.\n\t\t\t\t\t\t\t\t\t\t\t\t// Unescape is used here to \"recover\" the escaped characters\n\t\t\t\t\t\t\t\t\t\t\t\t// so they display without encoding.\n\t\t\t\t\t\t\t\t\t\t\t\t// See `updateAttributes` for more details.\n\t\t\t\t\t\t\t\t\t\t\t\t`${ decodeEntities( label ) } ${\n\t\t\t\t\t\t\t\t\t\t\t\t\tisInvalid || isDraft\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t? placeholderText\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t: ''\n\t\t\t\t\t\t\t\t\t\t\t\t}`.trim()\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t</Tooltip>\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</>\n\t\t\t\t\t) }\n\t\t\t\t\t{ isLinkOpen && (\n\t\t\t\t\t\t<LinkUI\n\t\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\t\tlink={ attributes }\n\t\t\t\t\t\t\tonClose={ () => {\n\t\t\t\t\t\t\t\t// If there is no link then remove the auto-inserted block.\n\t\t\t\t\t\t\t\t// This avoids empty blocks which can provided a poor UX.\n\t\t\t\t\t\t\t\tif ( ! url ) {\n\t\t\t\t\t\t\t\t\t// Select the previous block to keep focus nearby\n\t\t\t\t\t\t\t\t\tselectPreviousBlock( clientId, true );\n\t\t\t\t\t\t\t\t\t// Remove the link.\n\t\t\t\t\t\t\t\t\tonReplace( [] );\n\t\t\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\tsetIsLinkOpen( false );\n\t\t\t\t\t\t\t\tif ( openedBy ) {\n\t\t\t\t\t\t\t\t\topenedBy.focus();\n\t\t\t\t\t\t\t\t\tsetOpenedBy( null );\n\t\t\t\t\t\t\t\t} else if ( ref.current ) {\n\t\t\t\t\t\t\t\t\t// select the ref when adding a new link\n\t\t\t\t\t\t\t\t\tref.current.focus();\n\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t// Fallback\n\t\t\t\t\t\t\t\t\tselectPreviousBlock( clientId, true );\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tanchor={ popoverAnchor }\n\t\t\t\t\t\t\tonRemove={ removeLink }\n\t\t\t\t\t\t\tonChange={ ( updatedValue ) => {\n\t\t\t\t\t\t\t\tupdateAttributes(\n\t\t\t\t\t\t\t\t\tupdatedValue,\n\t\t\t\t\t\t\t\t\tsetAttributes,\n\t\t\t\t\t\t\t\t\tattributes\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</a>\n\t\t\t\t<div { ...innerBlocksProps } />\n\t\t\t</div>\n\t\t</>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
});
|
|
7
7
|
exports.default = NavigationSubmenuEdit;
|
|
8
8
|
var _react = require("react");
|
|
9
|
-
var
|
|
9
|
+
var _clsx = _interopRequireDefault(require("clsx"));
|
|
10
10
|
var _data = require("@wordpress/data");
|
|
11
11
|
var _components = require("@wordpress/components");
|
|
12
12
|
var _keycodes = require("@wordpress/keycodes");
|
|
@@ -259,7 +259,7 @@ function NavigationSubmenuEdit({
|
|
|
259
259
|
}
|
|
260
260
|
const blockProps = (0, _blockEditor.useBlockProps)({
|
|
261
261
|
ref: (0, _compose.useMergeRefs)([setPopoverAnchor, listItemRef]),
|
|
262
|
-
className: (0,
|
|
262
|
+
className: (0, _clsx.default)('wp-block-navigation-item', {
|
|
263
263
|
'is-editing': isSelected || isParentOfSelectedBlock,
|
|
264
264
|
'is-dragging-within': isDraggingWithin,
|
|
265
265
|
'has-link': !!url,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_classnames","_interopRequireDefault","require","_data","_components","_keycodes","_i18n","_blockEditor","_url","_element","_icons","_coreData","_a11y","_blocks","_compose","_icons2","_linkUi","_updateAttributes","_utils","ALLOWED_BLOCKS","DEFAULT_BLOCK","name","useIsDraggingWithin","elementRef","isDraggingWithin","setIsDraggingWithin","useState","useEffect","ownerDocument","current","handleDragStart","event","handleDragEnter","handleDragEnd","contains","target","addEventListener","removeEventListener","NavigationSubmenuEdit","attributes","isSelected","setAttributes","mergeBlocks","onReplace","context","clientId","label","type","url","description","rel","title","showSubmenuIcon","maxNestingLevel","openSubmenusOnClick","__unstableMarkNextChangeAsNotPersistent","replaceBlock","selectBlock","useDispatch","blockEditorStore","isLinkOpen","setIsLinkOpen","openedBy","setOpenedBy","popoverAnchor","setPopoverAnchor","listItemRef","useRef","itemLabelPlaceholder","__","ref","pagesPermissions","useResourcePermissions","postsPermissions","parentCount","isParentOfSelectedBlock","isImmediateParentOfSelectedBlock","hasChildren","selectedBlockHasChildren","onlyDescendantIsEmptyLink","useSelect","select","hasSelectedInnerBlock","getSelectedBlockClientId","getBlockParentsByBlockName","getBlock","getBlockCount","getBlockOrder","_onlyDescendantIsEmptyLink","selectedBlockId","selectedBlockChildren","length","singleBlock","prevHasChildren","usePrevious","isURL","prependHTTP","test","selectLabelText","focus","defaultView","selection","getSelection","range","createRange","selectNodeContents","removeAllRanges","addRange","userCanCreate","canCreate","textColor","customTextColor","backgroundColor","customBackgroundColor","getColors","onKeyDown","isKeyboardEvent","primary","preventDefault","stopPropagation","blockProps","useBlockProps","useMergeRefs","className","classnames","getColorClassName","style","color","innerBlocksColors","allowedBlocks","filter","blockName","navigationChildBlockProps","getNavigationChildBlockProps","innerBlocksProps","useInnerBlocksProps","defaultBlock","directInsert","__experimentalCaptureToolbars","renderAppender","InnerBlocks","ButtonBlockAppender","ParentElement","transformToLink","newLinkBlock","createBlock","canConvertToLink","_react","createElement","Fragment","BlockControls","ToolbarGroup","ToolbarButton","icon","linkIcon","shortcut","displayShortcut","onClick","currentTarget","removeSubmenu","isDisabled","InspectorControls","PanelBody","TextControl","__nextHasNoMarginBottom","__next40pxDefaultSize","value","onChange","labelValue","autoComplete","urlValue","TextareaControl","descriptionValue","help","titleValue","relValue","RichText","identifier","onMerge","placeholder","withoutInteractiveFormatting","allowedFormats","LinkUI","link","onClose","anchor","hasCreateSuggestion","onRemove","speak","updatedValue","updateAttributes","ItemSubmenuIcon"],"sources":["@wordpress/block-library/src/navigation-submenu/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport {\n\tPanelBody,\n\tTextControl,\n\tTextareaControl,\n\tToolbarButton,\n\tToolbarGroup,\n} from '@wordpress/components';\nimport { displayShortcut, isKeyboardEvent } from '@wordpress/keycodes';\nimport { __ } from '@wordpress/i18n';\nimport {\n\tBlockControls,\n\tInnerBlocks,\n\tuseInnerBlocksProps,\n\tInspectorControls,\n\tRichText,\n\tuseBlockProps,\n\tstore as blockEditorStore,\n\tgetColorClassName,\n} from '@wordpress/block-editor';\nimport { isURL, prependHTTP } from '@wordpress/url';\nimport { useState, useEffect, useRef } from '@wordpress/element';\nimport { link as linkIcon, removeSubmenu } from '@wordpress/icons';\nimport { useResourcePermissions } from '@wordpress/core-data';\nimport { speak } from '@wordpress/a11y';\nimport { createBlock } from '@wordpress/blocks';\nimport { useMergeRefs, usePrevious } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport { ItemSubmenuIcon } from './icons';\nimport { LinkUI } from '../navigation-link/link-ui';\nimport { updateAttributes } from '../navigation-link/update-attributes';\nimport {\n\tgetColors,\n\tgetNavigationChildBlockProps,\n} from '../navigation/edit/utils';\n\nconst ALLOWED_BLOCKS = [\n\t'core/navigation-link',\n\t'core/navigation-submenu',\n\t'core/page-list',\n];\n\nconst DEFAULT_BLOCK = {\n\tname: 'core/navigation-link',\n};\n\n/**\n * A React hook to determine if it's dragging within the target element.\n *\n * @typedef {import('@wordpress/element').RefObject} RefObject\n *\n * @param {RefObject<HTMLElement>} elementRef The target elementRef object.\n *\n * @return {boolean} Is dragging within the target element.\n */\nconst useIsDraggingWithin = ( elementRef ) => {\n\tconst [ isDraggingWithin, setIsDraggingWithin ] = useState( false );\n\n\tuseEffect( () => {\n\t\tconst { ownerDocument } = elementRef.current;\n\n\t\tfunction handleDragStart( event ) {\n\t\t\t// Check the first time when the dragging starts.\n\t\t\thandleDragEnter( event );\n\t\t}\n\n\t\t// Set to false whenever the user cancel the drag event by either releasing the mouse or press Escape.\n\t\tfunction handleDragEnd() {\n\t\t\tsetIsDraggingWithin( false );\n\t\t}\n\n\t\tfunction handleDragEnter( event ) {\n\t\t\t// Check if the current target is inside the item element.\n\t\t\tif ( elementRef.current.contains( event.target ) ) {\n\t\t\t\tsetIsDraggingWithin( true );\n\t\t\t} else {\n\t\t\t\tsetIsDraggingWithin( false );\n\t\t\t}\n\t\t}\n\n\t\t// Bind these events to the document to catch all drag events.\n\t\t// Ideally, we can also use `event.relatedTarget`, but sadly that\n\t\t// doesn't work in Safari.\n\t\townerDocument.addEventListener( 'dragstart', handleDragStart );\n\t\townerDocument.addEventListener( 'dragend', handleDragEnd );\n\t\townerDocument.addEventListener( 'dragenter', handleDragEnter );\n\n\t\treturn () => {\n\t\t\townerDocument.removeEventListener( 'dragstart', handleDragStart );\n\t\t\townerDocument.removeEventListener( 'dragend', handleDragEnd );\n\t\t\townerDocument.removeEventListener( 'dragenter', handleDragEnter );\n\t\t};\n\t}, [] );\n\n\treturn isDraggingWithin;\n};\n\n/**\n * @typedef {'post-type'|'custom'|'taxonomy'|'post-type-archive'} WPNavigationLinkKind\n */\n\n/**\n * Navigation Link Block Attributes\n *\n * @typedef {Object} WPNavigationLinkBlockAttributes\n *\n * @property {string} [label] Link text.\n * @property {WPNavigationLinkKind} [kind] Kind is used to differentiate between term and post ids to check post draft status.\n * @property {string} [type] The type such as post, page, tag, category and other custom types.\n * @property {string} [rel] The relationship of the linked URL.\n * @property {number} [id] A post or term id.\n * @property {boolean} [opensInNewTab] Sets link target to _blank when true.\n * @property {string} [url] Link href.\n * @property {string} [title] Link title attribute.\n */\n\nexport default function NavigationSubmenuEdit( {\n\tattributes,\n\tisSelected,\n\tsetAttributes,\n\tmergeBlocks,\n\tonReplace,\n\tcontext,\n\tclientId,\n} ) {\n\tconst { label, type, url, description, rel, title } = attributes;\n\n\tconst { showSubmenuIcon, maxNestingLevel, openSubmenusOnClick } = context;\n\n\tconst {\n\t\t__unstableMarkNextChangeAsNotPersistent,\n\t\treplaceBlock,\n\t\tselectBlock,\n\t} = useDispatch( blockEditorStore );\n\tconst [ isLinkOpen, setIsLinkOpen ] = useState( false );\n\t// Store what element opened the popover, so we know where to return focus to (toolbar button vs navigation link text)\n\tconst [ openedBy, setOpenedBy ] = useState( null );\n\t// Use internal state instead of a ref to make sure that the component\n\t// re-renders when the popover's anchor updates.\n\tconst [ popoverAnchor, setPopoverAnchor ] = useState( null );\n\tconst listItemRef = useRef( null );\n\tconst isDraggingWithin = useIsDraggingWithin( listItemRef );\n\tconst itemLabelPlaceholder = __( 'Add text…' );\n\tconst ref = useRef();\n\n\tconst pagesPermissions = useResourcePermissions( 'pages' );\n\tconst postsPermissions = useResourcePermissions( 'posts' );\n\n\tconst {\n\t\tparentCount,\n\t\tisParentOfSelectedBlock,\n\t\tisImmediateParentOfSelectedBlock,\n\t\thasChildren,\n\t\tselectedBlockHasChildren,\n\t\tonlyDescendantIsEmptyLink,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\thasSelectedInnerBlock,\n\t\t\t\tgetSelectedBlockClientId,\n\t\t\t\tgetBlockParentsByBlockName,\n\t\t\t\tgetBlock,\n\t\t\t\tgetBlockCount,\n\t\t\t\tgetBlockOrder,\n\t\t\t} = select( blockEditorStore );\n\n\t\t\tlet _onlyDescendantIsEmptyLink;\n\n\t\t\tconst selectedBlockId = getSelectedBlockClientId();\n\n\t\t\tconst selectedBlockChildren = getBlockOrder( selectedBlockId );\n\n\t\t\t// Check for a single descendant in the submenu. If that block\n\t\t\t// is a link block in a \"placeholder\" state with no label then\n\t\t\t// we can consider as an \"empty\" link.\n\t\t\tif ( selectedBlockChildren?.length === 1 ) {\n\t\t\t\tconst singleBlock = getBlock( selectedBlockChildren[ 0 ] );\n\n\t\t\t\t_onlyDescendantIsEmptyLink =\n\t\t\t\t\tsingleBlock?.name === 'core/navigation-link' &&\n\t\t\t\t\t! singleBlock?.attributes?.label;\n\t\t\t}\n\n\t\t\treturn {\n\t\t\t\tparentCount: getBlockParentsByBlockName(\n\t\t\t\t\tclientId,\n\t\t\t\t\t'core/navigation-submenu'\n\t\t\t\t).length,\n\t\t\t\tisParentOfSelectedBlock: hasSelectedInnerBlock(\n\t\t\t\t\tclientId,\n\t\t\t\t\ttrue\n\t\t\t\t),\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\thasChildren: !! getBlockCount( clientId ),\n\t\t\t\tselectedBlockHasChildren: !! selectedBlockChildren?.length,\n\t\t\t\tonlyDescendantIsEmptyLink: _onlyDescendantIsEmptyLink,\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\n\tconst prevHasChildren = usePrevious( hasChildren );\n\n\t// Show the LinkControl on mount if the URL is empty\n\t// ( When adding a new menu item)\n\t// This can't be done in the useState call because it conflicts\n\t// with the autofocus behavior of the BlockListBlock component.\n\tuseEffect( () => {\n\t\tif ( ! openSubmenusOnClick && ! url ) {\n\t\t\tsetIsLinkOpen( true );\n\t\t}\n\t}, [] );\n\n\t/**\n\t * The hook shouldn't be necessary but due to a focus loss happening\n\t * when selecting a suggestion in the link popover, we force close on block unselection.\n\t */\n\tuseEffect( () => {\n\t\tif ( ! isSelected ) {\n\t\t\tsetIsLinkOpen( false );\n\t\t}\n\t}, [ isSelected ] );\n\n\t// If the LinkControl popover is open and the URL has changed, close the LinkControl and focus the label text.\n\tuseEffect( () => {\n\t\tif ( isLinkOpen && url ) {\n\t\t\t// Does this look like a URL and have something TLD-ish?\n\t\t\tif (\n\t\t\t\tisURL( prependHTTP( label ) ) &&\n\t\t\t\t/^.+\\.[a-z]+/.test( label )\n\t\t\t) {\n\t\t\t\t// Focus and select the label text.\n\t\t\t\tselectLabelText();\n\t\t\t}\n\t\t}\n\t}, [ url ] );\n\n\t/**\n\t * Focus the Link label text and select it.\n\t */\n\tfunction selectLabelText() {\n\t\tref.current.focus();\n\t\tconst { ownerDocument } = ref.current;\n\t\tconst { defaultView } = ownerDocument;\n\t\tconst selection = defaultView.getSelection();\n\t\tconst range = ownerDocument.createRange();\n\t\t// Get the range of the current ref contents so we can add this range to the selection.\n\t\trange.selectNodeContents( ref.current );\n\t\tselection.removeAllRanges();\n\t\tselection.addRange( range );\n\t}\n\n\tlet userCanCreate = false;\n\tif ( ! type || type === 'page' ) {\n\t\tuserCanCreate = pagesPermissions.canCreate;\n\t} else if ( type === 'post' ) {\n\t\tuserCanCreate = postsPermissions.canCreate;\n\t}\n\n\tconst {\n\t\ttextColor,\n\t\tcustomTextColor,\n\t\tbackgroundColor,\n\t\tcustomBackgroundColor,\n\t} = getColors( context, parentCount > 0 );\n\n\tfunction onKeyDown( event ) {\n\t\tif ( isKeyboardEvent.primary( event, 'k' ) ) {\n\t\t\t// Required to prevent the command center from opening,\n\t\t\t// as it shares the CMD+K shortcut.\n\t\t\t// See https://github.com/WordPress/gutenberg/pull/59845.\n\t\t\tevent.preventDefault();\n\t\t\t// If we don't stop propogation, this event bubbles up to the parent submenu item\n\t\t\tevent.stopPropagation();\n\t\t\tsetIsLinkOpen( true );\n\t\t\tsetOpenedBy( ref.current );\n\t\t}\n\t}\n\n\tconst blockProps = useBlockProps( {\n\t\tref: useMergeRefs( [ setPopoverAnchor, listItemRef ] ),\n\t\tclassName: classnames( 'wp-block-navigation-item', {\n\t\t\t'is-editing': isSelected || isParentOfSelectedBlock,\n\t\t\t'is-dragging-within': isDraggingWithin,\n\t\t\t'has-link': !! url,\n\t\t\t'has-child': hasChildren,\n\t\t\t'has-text-color': !! textColor || !! customTextColor,\n\t\t\t[ getColorClassName( 'color', textColor ) ]: !! textColor,\n\t\t\t'has-background': !! backgroundColor || customBackgroundColor,\n\t\t\t[ getColorClassName( 'background-color', backgroundColor ) ]:\n\t\t\t\t!! backgroundColor,\n\t\t\t'open-on-click': openSubmenusOnClick,\n\t\t} ),\n\t\tstyle: {\n\t\t\tcolor: ! textColor && customTextColor,\n\t\t\tbackgroundColor: ! backgroundColor && customBackgroundColor,\n\t\t},\n\t\tonKeyDown,\n\t} );\n\n\t// Always use overlay colors for submenus.\n\tconst innerBlocksColors = getColors( context, true );\n\n\tconst allowedBlocks =\n\t\tparentCount >= maxNestingLevel\n\t\t\t? ALLOWED_BLOCKS.filter(\n\t\t\t\t\t( blockName ) => blockName !== 'core/navigation-submenu'\n\t\t\t )\n\t\t\t: ALLOWED_BLOCKS;\n\n\tconst navigationChildBlockProps =\n\t\tgetNavigationChildBlockProps( innerBlocksColors );\n\tconst innerBlocksProps = useInnerBlocksProps( navigationChildBlockProps, {\n\t\tallowedBlocks,\n\t\tdefaultBlock: DEFAULT_BLOCK,\n\t\tdirectInsert: true,\n\n\t\t// Ensure block toolbar is not too far removed from item\n\t\t// being edited.\n\t\t// see: https://github.com/WordPress/gutenberg/pull/34615.\n\t\t__experimentalCaptureToolbars: true,\n\n\t\trenderAppender:\n\t\t\tisSelected ||\n\t\t\t( isImmediateParentOfSelectedBlock &&\n\t\t\t\t! selectedBlockHasChildren ) ||\n\t\t\t// Show the appender while dragging to allow inserting element between item and the appender.\n\t\t\thasChildren\n\t\t\t\t? InnerBlocks.ButtonBlockAppender\n\t\t\t\t: false,\n\t} );\n\n\tconst ParentElement = openSubmenusOnClick ? 'button' : 'a';\n\n\tfunction transformToLink() {\n\t\tconst newLinkBlock = createBlock( 'core/navigation-link', attributes );\n\t\treplaceBlock( clientId, newLinkBlock );\n\t}\n\n\tuseEffect( () => {\n\t\t// If block becomes empty, transform to Navigation Link.\n\t\tif ( ! hasChildren && prevHasChildren ) {\n\t\t\t// This side-effect should not create an undo level as those should\n\t\t\t// only be created via user interactions.\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\ttransformToLink();\n\t\t}\n\t}, [ hasChildren, prevHasChildren ] );\n\n\tconst canConvertToLink =\n\t\t! selectedBlockHasChildren || onlyDescendantIsEmptyLink;\n\n\treturn (\n\t\t<>\n\t\t\t<BlockControls>\n\t\t\t\t<ToolbarGroup>\n\t\t\t\t\t{ ! openSubmenusOnClick && (\n\t\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\t\tname=\"link\"\n\t\t\t\t\t\t\ticon={ linkIcon }\n\t\t\t\t\t\t\ttitle={ __( 'Link' ) }\n\t\t\t\t\t\t\tshortcut={ displayShortcut.primary( 'k' ) }\n\t\t\t\t\t\t\tonClick={ ( event ) => {\n\t\t\t\t\t\t\t\tsetIsLinkOpen( true );\n\t\t\t\t\t\t\t\tsetOpenedBy( event.currentTarget );\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\t<ToolbarButton\n\t\t\t\t\t\tname=\"revert\"\n\t\t\t\t\t\ticon={ removeSubmenu }\n\t\t\t\t\t\ttitle={ __( 'Convert to Link' ) }\n\t\t\t\t\t\tonClick={ transformToLink }\n\t\t\t\t\t\tclassName=\"wp-block-navigation__submenu__revert\"\n\t\t\t\t\t\tisDisabled={ ! canConvertToLink }\n\t\t\t\t\t/>\n\t\t\t\t</ToolbarGroup>\n\t\t\t</BlockControls>\n\t\t\t{ /* Warning, this duplicated in packages/block-library/src/navigation-link/edit.js */ }\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\tvalue={ label || '' }\n\t\t\t\t\t\tonChange={ ( labelValue ) => {\n\t\t\t\t\t\t\tsetAttributes( { label: labelValue } );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tlabel={ __( 'Text' ) }\n\t\t\t\t\t\tautoComplete=\"off\"\n\t\t\t\t\t/>\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\tvalue={ url || '' }\n\t\t\t\t\t\tonChange={ ( urlValue ) => {\n\t\t\t\t\t\t\tsetAttributes( { url: urlValue } );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tlabel={ __( 'Link' ) }\n\t\t\t\t\t\tautoComplete=\"off\"\n\t\t\t\t\t/>\n\t\t\t\t\t<TextareaControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tvalue={ description || '' }\n\t\t\t\t\t\tonChange={ ( descriptionValue ) => {\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tdescription: descriptionValue,\n\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tlabel={ __( 'Description' ) }\n\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t'The description will be displayed in the menu if the current theme supports it.'\n\t\t\t\t\t\t) }\n\t\t\t\t\t/>\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\tvalue={ title || '' }\n\t\t\t\t\t\tonChange={ ( titleValue ) => {\n\t\t\t\t\t\t\tsetAttributes( { title: titleValue } );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tlabel={ __( 'Title attribute' ) }\n\t\t\t\t\t\tautoComplete=\"off\"\n\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t'Additional information to help clarify the purpose of the link.'\n\t\t\t\t\t\t) }\n\t\t\t\t\t/>\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\tvalue={ rel || '' }\n\t\t\t\t\t\tonChange={ ( relValue ) => {\n\t\t\t\t\t\t\tsetAttributes( { rel: relValue } );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tlabel={ __( 'Rel attribute' ) }\n\t\t\t\t\t\tautoComplete=\"off\"\n\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t'The relationship of the linked URL as space-separated link types.'\n\t\t\t\t\t\t) }\n\t\t\t\t\t/>\n\t\t\t\t</PanelBody>\n\t\t\t</InspectorControls>\n\t\t\t<div { ...blockProps }>\n\t\t\t\t{ /* eslint-disable jsx-a11y/anchor-is-valid */ }\n\t\t\t\t<ParentElement className=\"wp-block-navigation-item__content\">\n\t\t\t\t\t{ /* eslint-enable */ }\n\t\t\t\t\t{\n\t\t\t\t\t\t<RichText\n\t\t\t\t\t\t\tref={ ref }\n\t\t\t\t\t\t\tidentifier=\"label\"\n\t\t\t\t\t\t\tclassName=\"wp-block-navigation-item__label\"\n\t\t\t\t\t\t\tvalue={ label }\n\t\t\t\t\t\t\tonChange={ ( labelValue ) =>\n\t\t\t\t\t\t\t\tsetAttributes( { label: labelValue } )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tonMerge={ mergeBlocks }\n\t\t\t\t\t\t\tonReplace={ onReplace }\n\t\t\t\t\t\t\taria-label={ __( 'Navigation link text' ) }\n\t\t\t\t\t\t\tplaceholder={ itemLabelPlaceholder }\n\t\t\t\t\t\t\twithoutInteractiveFormatting\n\t\t\t\t\t\t\tallowedFormats={ [\n\t\t\t\t\t\t\t\t'core/bold',\n\t\t\t\t\t\t\t\t'core/italic',\n\t\t\t\t\t\t\t\t'core/image',\n\t\t\t\t\t\t\t\t'core/strikethrough',\n\t\t\t\t\t\t\t] }\n\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\tif ( ! openSubmenusOnClick && ! url ) {\n\t\t\t\t\t\t\t\t\tsetIsLinkOpen( true );\n\t\t\t\t\t\t\t\t\tsetOpenedBy( ref.current );\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\t{ ! openSubmenusOnClick && isLinkOpen && (\n\t\t\t\t\t\t<LinkUI\n\t\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\t\tlink={ attributes }\n\t\t\t\t\t\t\tonClose={ () => {\n\t\t\t\t\t\t\t\tsetIsLinkOpen( false );\n\t\t\t\t\t\t\t\tif ( openedBy ) {\n\t\t\t\t\t\t\t\t\topenedBy.focus();\n\t\t\t\t\t\t\t\t\tsetOpenedBy( null );\n\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\tselectBlock( clientId );\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tanchor={ popoverAnchor }\n\t\t\t\t\t\t\thasCreateSuggestion={ userCanCreate }\n\t\t\t\t\t\t\tonRemove={ () => {\n\t\t\t\t\t\t\t\tsetAttributes( { url: '' } );\n\t\t\t\t\t\t\t\tspeak( __( 'Link removed.' ), 'assertive' );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tonChange={ ( updatedValue ) => {\n\t\t\t\t\t\t\t\tupdateAttributes(\n\t\t\t\t\t\t\t\t\tupdatedValue,\n\t\t\t\t\t\t\t\t\tsetAttributes,\n\t\t\t\t\t\t\t\t\tattributes\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</ParentElement>\n\t\t\t\t{ ( showSubmenuIcon || openSubmenusOnClick ) && (\n\t\t\t\t\t<span className=\"wp-block-navigation__submenu-icon\">\n\t\t\t\t\t\t<ItemSubmenuIcon />\n\t\t\t\t\t</span>\n\t\t\t\t) }\n\t\t\t\t<div { ...innerBlocksProps } />\n\t\t\t</div>\n\t\t</>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_clsx","_interopRequireDefault","require","_data","_components","_keycodes","_i18n","_blockEditor","_url","_element","_icons","_coreData","_a11y","_blocks","_compose","_icons2","_linkUi","_updateAttributes","_utils","ALLOWED_BLOCKS","DEFAULT_BLOCK","name","useIsDraggingWithin","elementRef","isDraggingWithin","setIsDraggingWithin","useState","useEffect","ownerDocument","current","handleDragStart","event","handleDragEnter","handleDragEnd","contains","target","addEventListener","removeEventListener","NavigationSubmenuEdit","attributes","isSelected","setAttributes","mergeBlocks","onReplace","context","clientId","label","type","url","description","rel","title","showSubmenuIcon","maxNestingLevel","openSubmenusOnClick","__unstableMarkNextChangeAsNotPersistent","replaceBlock","selectBlock","useDispatch","blockEditorStore","isLinkOpen","setIsLinkOpen","openedBy","setOpenedBy","popoverAnchor","setPopoverAnchor","listItemRef","useRef","itemLabelPlaceholder","__","ref","pagesPermissions","useResourcePermissions","postsPermissions","parentCount","isParentOfSelectedBlock","isImmediateParentOfSelectedBlock","hasChildren","selectedBlockHasChildren","onlyDescendantIsEmptyLink","useSelect","select","hasSelectedInnerBlock","getSelectedBlockClientId","getBlockParentsByBlockName","getBlock","getBlockCount","getBlockOrder","_onlyDescendantIsEmptyLink","selectedBlockId","selectedBlockChildren","length","singleBlock","prevHasChildren","usePrevious","isURL","prependHTTP","test","selectLabelText","focus","defaultView","selection","getSelection","range","createRange","selectNodeContents","removeAllRanges","addRange","userCanCreate","canCreate","textColor","customTextColor","backgroundColor","customBackgroundColor","getColors","onKeyDown","isKeyboardEvent","primary","preventDefault","stopPropagation","blockProps","useBlockProps","useMergeRefs","className","clsx","getColorClassName","style","color","innerBlocksColors","allowedBlocks","filter","blockName","navigationChildBlockProps","getNavigationChildBlockProps","innerBlocksProps","useInnerBlocksProps","defaultBlock","directInsert","__experimentalCaptureToolbars","renderAppender","InnerBlocks","ButtonBlockAppender","ParentElement","transformToLink","newLinkBlock","createBlock","canConvertToLink","_react","createElement","Fragment","BlockControls","ToolbarGroup","ToolbarButton","icon","linkIcon","shortcut","displayShortcut","onClick","currentTarget","removeSubmenu","isDisabled","InspectorControls","PanelBody","TextControl","__nextHasNoMarginBottom","__next40pxDefaultSize","value","onChange","labelValue","autoComplete","urlValue","TextareaControl","descriptionValue","help","titleValue","relValue","RichText","identifier","onMerge","placeholder","withoutInteractiveFormatting","allowedFormats","LinkUI","link","onClose","anchor","hasCreateSuggestion","onRemove","speak","updatedValue","updateAttributes","ItemSubmenuIcon"],"sources":["@wordpress/block-library/src/navigation-submenu/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport {\n\tPanelBody,\n\tTextControl,\n\tTextareaControl,\n\tToolbarButton,\n\tToolbarGroup,\n} from '@wordpress/components';\nimport { displayShortcut, isKeyboardEvent } from '@wordpress/keycodes';\nimport { __ } from '@wordpress/i18n';\nimport {\n\tBlockControls,\n\tInnerBlocks,\n\tuseInnerBlocksProps,\n\tInspectorControls,\n\tRichText,\n\tuseBlockProps,\n\tstore as blockEditorStore,\n\tgetColorClassName,\n} from '@wordpress/block-editor';\nimport { isURL, prependHTTP } from '@wordpress/url';\nimport { useState, useEffect, useRef } from '@wordpress/element';\nimport { link as linkIcon, removeSubmenu } from '@wordpress/icons';\nimport { useResourcePermissions } from '@wordpress/core-data';\nimport { speak } from '@wordpress/a11y';\nimport { createBlock } from '@wordpress/blocks';\nimport { useMergeRefs, usePrevious } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport { ItemSubmenuIcon } from './icons';\nimport { LinkUI } from '../navigation-link/link-ui';\nimport { updateAttributes } from '../navigation-link/update-attributes';\nimport {\n\tgetColors,\n\tgetNavigationChildBlockProps,\n} from '../navigation/edit/utils';\n\nconst ALLOWED_BLOCKS = [\n\t'core/navigation-link',\n\t'core/navigation-submenu',\n\t'core/page-list',\n];\n\nconst DEFAULT_BLOCK = {\n\tname: 'core/navigation-link',\n};\n\n/**\n * A React hook to determine if it's dragging within the target element.\n *\n * @typedef {import('@wordpress/element').RefObject} RefObject\n *\n * @param {RefObject<HTMLElement>} elementRef The target elementRef object.\n *\n * @return {boolean} Is dragging within the target element.\n */\nconst useIsDraggingWithin = ( elementRef ) => {\n\tconst [ isDraggingWithin, setIsDraggingWithin ] = useState( false );\n\n\tuseEffect( () => {\n\t\tconst { ownerDocument } = elementRef.current;\n\n\t\tfunction handleDragStart( event ) {\n\t\t\t// Check the first time when the dragging starts.\n\t\t\thandleDragEnter( event );\n\t\t}\n\n\t\t// Set to false whenever the user cancel the drag event by either releasing the mouse or press Escape.\n\t\tfunction handleDragEnd() {\n\t\t\tsetIsDraggingWithin( false );\n\t\t}\n\n\t\tfunction handleDragEnter( event ) {\n\t\t\t// Check if the current target is inside the item element.\n\t\t\tif ( elementRef.current.contains( event.target ) ) {\n\t\t\t\tsetIsDraggingWithin( true );\n\t\t\t} else {\n\t\t\t\tsetIsDraggingWithin( false );\n\t\t\t}\n\t\t}\n\n\t\t// Bind these events to the document to catch all drag events.\n\t\t// Ideally, we can also use `event.relatedTarget`, but sadly that\n\t\t// doesn't work in Safari.\n\t\townerDocument.addEventListener( 'dragstart', handleDragStart );\n\t\townerDocument.addEventListener( 'dragend', handleDragEnd );\n\t\townerDocument.addEventListener( 'dragenter', handleDragEnter );\n\n\t\treturn () => {\n\t\t\townerDocument.removeEventListener( 'dragstart', handleDragStart );\n\t\t\townerDocument.removeEventListener( 'dragend', handleDragEnd );\n\t\t\townerDocument.removeEventListener( 'dragenter', handleDragEnter );\n\t\t};\n\t}, [] );\n\n\treturn isDraggingWithin;\n};\n\n/**\n * @typedef {'post-type'|'custom'|'taxonomy'|'post-type-archive'} WPNavigationLinkKind\n */\n\n/**\n * Navigation Link Block Attributes\n *\n * @typedef {Object} WPNavigationLinkBlockAttributes\n *\n * @property {string} [label] Link text.\n * @property {WPNavigationLinkKind} [kind] Kind is used to differentiate between term and post ids to check post draft status.\n * @property {string} [type] The type such as post, page, tag, category and other custom types.\n * @property {string} [rel] The relationship of the linked URL.\n * @property {number} [id] A post or term id.\n * @property {boolean} [opensInNewTab] Sets link target to _blank when true.\n * @property {string} [url] Link href.\n * @property {string} [title] Link title attribute.\n */\n\nexport default function NavigationSubmenuEdit( {\n\tattributes,\n\tisSelected,\n\tsetAttributes,\n\tmergeBlocks,\n\tonReplace,\n\tcontext,\n\tclientId,\n} ) {\n\tconst { label, type, url, description, rel, title } = attributes;\n\n\tconst { showSubmenuIcon, maxNestingLevel, openSubmenusOnClick } = context;\n\n\tconst {\n\t\t__unstableMarkNextChangeAsNotPersistent,\n\t\treplaceBlock,\n\t\tselectBlock,\n\t} = useDispatch( blockEditorStore );\n\tconst [ isLinkOpen, setIsLinkOpen ] = useState( false );\n\t// Store what element opened the popover, so we know where to return focus to (toolbar button vs navigation link text)\n\tconst [ openedBy, setOpenedBy ] = useState( null );\n\t// Use internal state instead of a ref to make sure that the component\n\t// re-renders when the popover's anchor updates.\n\tconst [ popoverAnchor, setPopoverAnchor ] = useState( null );\n\tconst listItemRef = useRef( null );\n\tconst isDraggingWithin = useIsDraggingWithin( listItemRef );\n\tconst itemLabelPlaceholder = __( 'Add text…' );\n\tconst ref = useRef();\n\n\tconst pagesPermissions = useResourcePermissions( 'pages' );\n\tconst postsPermissions = useResourcePermissions( 'posts' );\n\n\tconst {\n\t\tparentCount,\n\t\tisParentOfSelectedBlock,\n\t\tisImmediateParentOfSelectedBlock,\n\t\thasChildren,\n\t\tselectedBlockHasChildren,\n\t\tonlyDescendantIsEmptyLink,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\thasSelectedInnerBlock,\n\t\t\t\tgetSelectedBlockClientId,\n\t\t\t\tgetBlockParentsByBlockName,\n\t\t\t\tgetBlock,\n\t\t\t\tgetBlockCount,\n\t\t\t\tgetBlockOrder,\n\t\t\t} = select( blockEditorStore );\n\n\t\t\tlet _onlyDescendantIsEmptyLink;\n\n\t\t\tconst selectedBlockId = getSelectedBlockClientId();\n\n\t\t\tconst selectedBlockChildren = getBlockOrder( selectedBlockId );\n\n\t\t\t// Check for a single descendant in the submenu. If that block\n\t\t\t// is a link block in a \"placeholder\" state with no label then\n\t\t\t// we can consider as an \"empty\" link.\n\t\t\tif ( selectedBlockChildren?.length === 1 ) {\n\t\t\t\tconst singleBlock = getBlock( selectedBlockChildren[ 0 ] );\n\n\t\t\t\t_onlyDescendantIsEmptyLink =\n\t\t\t\t\tsingleBlock?.name === 'core/navigation-link' &&\n\t\t\t\t\t! singleBlock?.attributes?.label;\n\t\t\t}\n\n\t\t\treturn {\n\t\t\t\tparentCount: getBlockParentsByBlockName(\n\t\t\t\t\tclientId,\n\t\t\t\t\t'core/navigation-submenu'\n\t\t\t\t).length,\n\t\t\t\tisParentOfSelectedBlock: hasSelectedInnerBlock(\n\t\t\t\t\tclientId,\n\t\t\t\t\ttrue\n\t\t\t\t),\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\thasChildren: !! getBlockCount( clientId ),\n\t\t\t\tselectedBlockHasChildren: !! selectedBlockChildren?.length,\n\t\t\t\tonlyDescendantIsEmptyLink: _onlyDescendantIsEmptyLink,\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\n\tconst prevHasChildren = usePrevious( hasChildren );\n\n\t// Show the LinkControl on mount if the URL is empty\n\t// ( When adding a new menu item)\n\t// This can't be done in the useState call because it conflicts\n\t// with the autofocus behavior of the BlockListBlock component.\n\tuseEffect( () => {\n\t\tif ( ! openSubmenusOnClick && ! url ) {\n\t\t\tsetIsLinkOpen( true );\n\t\t}\n\t}, [] );\n\n\t/**\n\t * The hook shouldn't be necessary but due to a focus loss happening\n\t * when selecting a suggestion in the link popover, we force close on block unselection.\n\t */\n\tuseEffect( () => {\n\t\tif ( ! isSelected ) {\n\t\t\tsetIsLinkOpen( false );\n\t\t}\n\t}, [ isSelected ] );\n\n\t// If the LinkControl popover is open and the URL has changed, close the LinkControl and focus the label text.\n\tuseEffect( () => {\n\t\tif ( isLinkOpen && url ) {\n\t\t\t// Does this look like a URL and have something TLD-ish?\n\t\t\tif (\n\t\t\t\tisURL( prependHTTP( label ) ) &&\n\t\t\t\t/^.+\\.[a-z]+/.test( label )\n\t\t\t) {\n\t\t\t\t// Focus and select the label text.\n\t\t\t\tselectLabelText();\n\t\t\t}\n\t\t}\n\t}, [ url ] );\n\n\t/**\n\t * Focus the Link label text and select it.\n\t */\n\tfunction selectLabelText() {\n\t\tref.current.focus();\n\t\tconst { ownerDocument } = ref.current;\n\t\tconst { defaultView } = ownerDocument;\n\t\tconst selection = defaultView.getSelection();\n\t\tconst range = ownerDocument.createRange();\n\t\t// Get the range of the current ref contents so we can add this range to the selection.\n\t\trange.selectNodeContents( ref.current );\n\t\tselection.removeAllRanges();\n\t\tselection.addRange( range );\n\t}\n\n\tlet userCanCreate = false;\n\tif ( ! type || type === 'page' ) {\n\t\tuserCanCreate = pagesPermissions.canCreate;\n\t} else if ( type === 'post' ) {\n\t\tuserCanCreate = postsPermissions.canCreate;\n\t}\n\n\tconst {\n\t\ttextColor,\n\t\tcustomTextColor,\n\t\tbackgroundColor,\n\t\tcustomBackgroundColor,\n\t} = getColors( context, parentCount > 0 );\n\n\tfunction onKeyDown( event ) {\n\t\tif ( isKeyboardEvent.primary( event, 'k' ) ) {\n\t\t\t// Required to prevent the command center from opening,\n\t\t\t// as it shares the CMD+K shortcut.\n\t\t\t// See https://github.com/WordPress/gutenberg/pull/59845.\n\t\t\tevent.preventDefault();\n\t\t\t// If we don't stop propogation, this event bubbles up to the parent submenu item\n\t\t\tevent.stopPropagation();\n\t\t\tsetIsLinkOpen( true );\n\t\t\tsetOpenedBy( ref.current );\n\t\t}\n\t}\n\n\tconst blockProps = useBlockProps( {\n\t\tref: useMergeRefs( [ setPopoverAnchor, listItemRef ] ),\n\t\tclassName: clsx( 'wp-block-navigation-item', {\n\t\t\t'is-editing': isSelected || isParentOfSelectedBlock,\n\t\t\t'is-dragging-within': isDraggingWithin,\n\t\t\t'has-link': !! url,\n\t\t\t'has-child': hasChildren,\n\t\t\t'has-text-color': !! textColor || !! customTextColor,\n\t\t\t[ getColorClassName( 'color', textColor ) ]: !! textColor,\n\t\t\t'has-background': !! backgroundColor || customBackgroundColor,\n\t\t\t[ getColorClassName( 'background-color', backgroundColor ) ]:\n\t\t\t\t!! backgroundColor,\n\t\t\t'open-on-click': openSubmenusOnClick,\n\t\t} ),\n\t\tstyle: {\n\t\t\tcolor: ! textColor && customTextColor,\n\t\t\tbackgroundColor: ! backgroundColor && customBackgroundColor,\n\t\t},\n\t\tonKeyDown,\n\t} );\n\n\t// Always use overlay colors for submenus.\n\tconst innerBlocksColors = getColors( context, true );\n\n\tconst allowedBlocks =\n\t\tparentCount >= maxNestingLevel\n\t\t\t? ALLOWED_BLOCKS.filter(\n\t\t\t\t\t( blockName ) => blockName !== 'core/navigation-submenu'\n\t\t\t )\n\t\t\t: ALLOWED_BLOCKS;\n\n\tconst navigationChildBlockProps =\n\t\tgetNavigationChildBlockProps( innerBlocksColors );\n\tconst innerBlocksProps = useInnerBlocksProps( navigationChildBlockProps, {\n\t\tallowedBlocks,\n\t\tdefaultBlock: DEFAULT_BLOCK,\n\t\tdirectInsert: true,\n\n\t\t// Ensure block toolbar is not too far removed from item\n\t\t// being edited.\n\t\t// see: https://github.com/WordPress/gutenberg/pull/34615.\n\t\t__experimentalCaptureToolbars: true,\n\n\t\trenderAppender:\n\t\t\tisSelected ||\n\t\t\t( isImmediateParentOfSelectedBlock &&\n\t\t\t\t! selectedBlockHasChildren ) ||\n\t\t\t// Show the appender while dragging to allow inserting element between item and the appender.\n\t\t\thasChildren\n\t\t\t\t? InnerBlocks.ButtonBlockAppender\n\t\t\t\t: false,\n\t} );\n\n\tconst ParentElement = openSubmenusOnClick ? 'button' : 'a';\n\n\tfunction transformToLink() {\n\t\tconst newLinkBlock = createBlock( 'core/navigation-link', attributes );\n\t\treplaceBlock( clientId, newLinkBlock );\n\t}\n\n\tuseEffect( () => {\n\t\t// If block becomes empty, transform to Navigation Link.\n\t\tif ( ! hasChildren && prevHasChildren ) {\n\t\t\t// This side-effect should not create an undo level as those should\n\t\t\t// only be created via user interactions.\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\ttransformToLink();\n\t\t}\n\t}, [ hasChildren, prevHasChildren ] );\n\n\tconst canConvertToLink =\n\t\t! selectedBlockHasChildren || onlyDescendantIsEmptyLink;\n\n\treturn (\n\t\t<>\n\t\t\t<BlockControls>\n\t\t\t\t<ToolbarGroup>\n\t\t\t\t\t{ ! openSubmenusOnClick && (\n\t\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\t\tname=\"link\"\n\t\t\t\t\t\t\ticon={ linkIcon }\n\t\t\t\t\t\t\ttitle={ __( 'Link' ) }\n\t\t\t\t\t\t\tshortcut={ displayShortcut.primary( 'k' ) }\n\t\t\t\t\t\t\tonClick={ ( event ) => {\n\t\t\t\t\t\t\t\tsetIsLinkOpen( true );\n\t\t\t\t\t\t\t\tsetOpenedBy( event.currentTarget );\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\t<ToolbarButton\n\t\t\t\t\t\tname=\"revert\"\n\t\t\t\t\t\ticon={ removeSubmenu }\n\t\t\t\t\t\ttitle={ __( 'Convert to Link' ) }\n\t\t\t\t\t\tonClick={ transformToLink }\n\t\t\t\t\t\tclassName=\"wp-block-navigation__submenu__revert\"\n\t\t\t\t\t\tisDisabled={ ! canConvertToLink }\n\t\t\t\t\t/>\n\t\t\t\t</ToolbarGroup>\n\t\t\t</BlockControls>\n\t\t\t{ /* Warning, this duplicated in packages/block-library/src/navigation-link/edit.js */ }\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\tvalue={ label || '' }\n\t\t\t\t\t\tonChange={ ( labelValue ) => {\n\t\t\t\t\t\t\tsetAttributes( { label: labelValue } );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tlabel={ __( 'Text' ) }\n\t\t\t\t\t\tautoComplete=\"off\"\n\t\t\t\t\t/>\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\tvalue={ url || '' }\n\t\t\t\t\t\tonChange={ ( urlValue ) => {\n\t\t\t\t\t\t\tsetAttributes( { url: urlValue } );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tlabel={ __( 'Link' ) }\n\t\t\t\t\t\tautoComplete=\"off\"\n\t\t\t\t\t/>\n\t\t\t\t\t<TextareaControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tvalue={ description || '' }\n\t\t\t\t\t\tonChange={ ( descriptionValue ) => {\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tdescription: descriptionValue,\n\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tlabel={ __( 'Description' ) }\n\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t'The description will be displayed in the menu if the current theme supports it.'\n\t\t\t\t\t\t) }\n\t\t\t\t\t/>\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\tvalue={ title || '' }\n\t\t\t\t\t\tonChange={ ( titleValue ) => {\n\t\t\t\t\t\t\tsetAttributes( { title: titleValue } );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tlabel={ __( 'Title attribute' ) }\n\t\t\t\t\t\tautoComplete=\"off\"\n\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t'Additional information to help clarify the purpose of the link.'\n\t\t\t\t\t\t) }\n\t\t\t\t\t/>\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\tvalue={ rel || '' }\n\t\t\t\t\t\tonChange={ ( relValue ) => {\n\t\t\t\t\t\t\tsetAttributes( { rel: relValue } );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tlabel={ __( 'Rel attribute' ) }\n\t\t\t\t\t\tautoComplete=\"off\"\n\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t'The relationship of the linked URL as space-separated link types.'\n\t\t\t\t\t\t) }\n\t\t\t\t\t/>\n\t\t\t\t</PanelBody>\n\t\t\t</InspectorControls>\n\t\t\t<div { ...blockProps }>\n\t\t\t\t{ /* eslint-disable jsx-a11y/anchor-is-valid */ }\n\t\t\t\t<ParentElement className=\"wp-block-navigation-item__content\">\n\t\t\t\t\t{ /* eslint-enable */ }\n\t\t\t\t\t{\n\t\t\t\t\t\t<RichText\n\t\t\t\t\t\t\tref={ ref }\n\t\t\t\t\t\t\tidentifier=\"label\"\n\t\t\t\t\t\t\tclassName=\"wp-block-navigation-item__label\"\n\t\t\t\t\t\t\tvalue={ label }\n\t\t\t\t\t\t\tonChange={ ( labelValue ) =>\n\t\t\t\t\t\t\t\tsetAttributes( { label: labelValue } )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tonMerge={ mergeBlocks }\n\t\t\t\t\t\t\tonReplace={ onReplace }\n\t\t\t\t\t\t\taria-label={ __( 'Navigation link text' ) }\n\t\t\t\t\t\t\tplaceholder={ itemLabelPlaceholder }\n\t\t\t\t\t\t\twithoutInteractiveFormatting\n\t\t\t\t\t\t\tallowedFormats={ [\n\t\t\t\t\t\t\t\t'core/bold',\n\t\t\t\t\t\t\t\t'core/italic',\n\t\t\t\t\t\t\t\t'core/image',\n\t\t\t\t\t\t\t\t'core/strikethrough',\n\t\t\t\t\t\t\t] }\n\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\tif ( ! openSubmenusOnClick && ! url ) {\n\t\t\t\t\t\t\t\t\tsetIsLinkOpen( true );\n\t\t\t\t\t\t\t\t\tsetOpenedBy( ref.current );\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\t{ ! openSubmenusOnClick && isLinkOpen && (\n\t\t\t\t\t\t<LinkUI\n\t\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\t\tlink={ attributes }\n\t\t\t\t\t\t\tonClose={ () => {\n\t\t\t\t\t\t\t\tsetIsLinkOpen( false );\n\t\t\t\t\t\t\t\tif ( openedBy ) {\n\t\t\t\t\t\t\t\t\topenedBy.focus();\n\t\t\t\t\t\t\t\t\tsetOpenedBy( null );\n\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\tselectBlock( clientId );\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tanchor={ popoverAnchor }\n\t\t\t\t\t\t\thasCreateSuggestion={ userCanCreate }\n\t\t\t\t\t\t\tonRemove={ () => {\n\t\t\t\t\t\t\t\tsetAttributes( { url: '' } );\n\t\t\t\t\t\t\t\tspeak( __( 'Link removed.' ), 'assertive' );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tonChange={ ( updatedValue ) => {\n\t\t\t\t\t\t\t\tupdateAttributes(\n\t\t\t\t\t\t\t\t\tupdatedValue,\n\t\t\t\t\t\t\t\t\tsetAttributes,\n\t\t\t\t\t\t\t\t\tattributes\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</ParentElement>\n\t\t\t\t{ ( showSubmenuIcon || openSubmenusOnClick ) && (\n\t\t\t\t\t<span className=\"wp-block-navigation__submenu-icon\">\n\t\t\t\t\t\t<ItemSubmenuIcon />\n\t\t\t\t\t</span>\n\t\t\t\t) }\n\t\t\t\t<div { ...innerBlocksProps } />\n\t\t\t</div>\n\t\t</>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
package/build/page-list/edit.js
CHANGED
|
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
});
|
|
7
7
|
exports.default = PageListEdit;
|
|
8
8
|
var _react = require("react");
|
|
9
|
-
var
|
|
9
|
+
var _clsx = _interopRequireDefault(require("clsx"));
|
|
10
10
|
var _blocks = require("@wordpress/blocks");
|
|
11
11
|
var _blockEditor = require("@wordpress/block-editor");
|
|
12
12
|
var _components = require("@wordpress/components");
|
|
@@ -139,7 +139,7 @@ function PageListEdit({
|
|
|
139
139
|
}, new Map());
|
|
140
140
|
}, [pages]);
|
|
141
141
|
const blockProps = (0, _blockEditor.useBlockProps)({
|
|
142
|
-
className: (0,
|
|
142
|
+
className: (0, _clsx.default)('wp-block-page-list', {
|
|
143
143
|
'has-text-color': !!context.textColor,
|
|
144
144
|
[(0, _blockEditor.getColorClassName)('color', context.textColor)]: !!context.textColor,
|
|
145
145
|
'has-background': !!context.backgroundColor,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_classnames","_interopRequireDefault","require","_blocks","_blockEditor","_components","_i18n","_element","_coreData","_data","_useConvertToNavigationLinks","_convertToLinksModal","MAX_PAGE_COUNT","NOOP","BlockContent","blockProps","innerBlocksProps","hasResolvedPages","blockList","pages","parentPageID","_react","createElement","className","Spinner","Notice","status","isDismissible","__","length","parentPageDetails","find","page","id","title","rendered","Warning","sprintf","PageListEdit","context","clientId","attributes","setAttributes","isOpen","setOpen","useState","openModal","useCallback","closeModal","records","hasResolved","useEntityRecords","per_page","_fields","orderby","order","allowConvertToLinks","pagesByParentId","useMemo","Map","sortedPages","sort","a","b","menu_order","localeCompare","reduce","accumulator","parent","has","get","push","set","useBlockProps","classnames","textColor","getColorClassName","backgroundColor","style","color","pagesTree","makePagesTree","parentId","level","childPages","tree","hasChildren","item","value","label","repeat","rawName","getBlockList","template","pageProps","trim","link","url","children","createBlock","isNested","hasSelectedChild","parentClientId","hasDraggedChild","isChildOfNavigation","useSelect","select","getBlockParentsByBlockName","hasSelectedInnerBlock","hasDraggedInnerBlock","blockEditorStore","blockParents","navigationBlockParents","convertToNavigationLinks","useConvertToNavigationLinks","useInnerBlocksProps","renderAppender","__unstableDisableDropZone","templateLock","onInput","onChange","selectBlock","useDispatch","useEffect","Fragment","InspectorControls","PanelBody","ComboboxControl","__next40pxDefaultSize","options","help","convertDescription","Button","variant","disabled","onClick","BlockControls","group","ToolbarButton","ConvertToLinksModal","onClose"],"sources":["@wordpress/block-library/src/page-list/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { createBlock } from '@wordpress/blocks';\nimport {\n\tInspectorControls,\n\tBlockControls,\n\tuseBlockProps,\n\tuseInnerBlocksProps,\n\tgetColorClassName,\n\tstore as blockEditorStore,\n\tWarning,\n} from '@wordpress/block-editor';\nimport {\n\tPanelBody,\n\tToolbarButton,\n\tSpinner,\n\tNotice,\n\tComboboxControl,\n\tButton,\n} from '@wordpress/components';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { useMemo, useState, useEffect, useCallback } from '@wordpress/element';\nimport { useEntityRecords } from '@wordpress/core-data';\nimport { useSelect, useDispatch } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport { useConvertToNavigationLinks } from './use-convert-to-navigation-links';\nimport {\n\tconvertDescription,\n\tConvertToLinksModal,\n} from './convert-to-links-modal';\n\n// We only show the edit option when page count is <= MAX_PAGE_COUNT\n// Performance of Navigation Links is not good past this value.\nconst MAX_PAGE_COUNT = 100;\nconst NOOP = () => {};\nfunction BlockContent( {\n\tblockProps,\n\tinnerBlocksProps,\n\thasResolvedPages,\n\tblockList,\n\tpages,\n\tparentPageID,\n} ) {\n\tif ( ! hasResolvedPages ) {\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t<div className=\"wp-block-page-list__loading-indicator-container\">\n\t\t\t\t\t<Spinner className=\"wp-block-page-list__loading-indicator\" />\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t);\n\t}\n\n\tif ( pages === null ) {\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t<Notice status={ 'warning' } isDismissible={ false }>\n\t\t\t\t\t{ __( 'Page List: Cannot retrieve Pages.' ) }\n\t\t\t\t</Notice>\n\t\t\t</div>\n\t\t);\n\t}\n\n\tif ( pages.length === 0 ) {\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t<Notice status={ 'info' } isDismissible={ false }>\n\t\t\t\t\t{ __( 'Page List: Cannot retrieve Pages.' ) }\n\t\t\t\t</Notice>\n\t\t\t</div>\n\t\t);\n\t}\n\n\tif ( blockList.length === 0 ) {\n\t\tconst parentPageDetails = pages.find(\n\t\t\t( page ) => page.id === parentPageID\n\t\t);\n\n\t\tif ( parentPageDetails?.title?.rendered ) {\n\t\t\treturn (\n\t\t\t\t<div { ...blockProps }>\n\t\t\t\t\t<Warning>\n\t\t\t\t\t\t{ sprintf(\n\t\t\t\t\t\t\t// translators: %s: Page title.\n\t\t\t\t\t\t\t__( 'Page List: \"%s\" page has no children.' ),\n\t\t\t\t\t\t\tparentPageDetails.title.rendered\n\t\t\t\t\t\t) }\n\t\t\t\t\t</Warning>\n\t\t\t\t</div>\n\t\t\t);\n\t\t}\n\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t<Notice status={ 'warning' } isDismissible={ false }>\n\t\t\t\t\t{ __( 'Page List: Cannot retrieve Pages.' ) }\n\t\t\t\t</Notice>\n\t\t\t</div>\n\t\t);\n\t}\n\n\tif ( pages.length > 0 ) {\n\t\treturn <ul { ...innerBlocksProps }></ul>;\n\t}\n}\n\nexport default function PageListEdit( {\n\tcontext,\n\tclientId,\n\tattributes,\n\tsetAttributes,\n} ) {\n\tconst { parentPageID } = attributes;\n\tconst [ isOpen, setOpen ] = useState( false );\n\tconst openModal = useCallback( () => setOpen( true ), [] );\n\tconst closeModal = () => setOpen( false );\n\n\tconst { records: pages, hasResolved: hasResolvedPages } = useEntityRecords(\n\t\t'postType',\n\t\t'page',\n\t\t{\n\t\t\tper_page: MAX_PAGE_COUNT,\n\t\t\t_fields: [ 'id', 'link', 'menu_order', 'parent', 'title', 'type' ],\n\t\t\t// TODO: When https://core.trac.wordpress.org/ticket/39037 REST API support for multiple orderby\n\t\t\t// values is resolved, update 'orderby' to [ 'menu_order', 'post_title' ] to provide a consistent\n\t\t\t// sort.\n\t\t\torderby: 'menu_order',\n\t\t\torder: 'asc',\n\t\t}\n\t);\n\n\tconst allowConvertToLinks =\n\t\t'showSubmenuIcon' in context &&\n\t\tpages?.length > 0 &&\n\t\tpages?.length <= MAX_PAGE_COUNT;\n\n\tconst pagesByParentId = useMemo( () => {\n\t\tif ( pages === null ) {\n\t\t\treturn new Map();\n\t\t}\n\n\t\t// TODO: Once the REST API supports passing multiple values to\n\t\t// 'orderby', this can be removed.\n\t\t// https://core.trac.wordpress.org/ticket/39037\n\t\tconst sortedPages = pages.sort( ( a, b ) => {\n\t\t\tif ( a.menu_order === b.menu_order ) {\n\t\t\t\treturn a.title.rendered.localeCompare( b.title.rendered );\n\t\t\t}\n\t\t\treturn a.menu_order - b.menu_order;\n\t\t} );\n\n\t\treturn sortedPages.reduce( ( accumulator, page ) => {\n\t\t\tconst { parent } = page;\n\t\t\tif ( accumulator.has( parent ) ) {\n\t\t\t\taccumulator.get( parent ).push( page );\n\t\t\t} else {\n\t\t\t\taccumulator.set( parent, [ page ] );\n\t\t\t}\n\t\t\treturn accumulator;\n\t\t}, new Map() );\n\t}, [ pages ] );\n\n\tconst blockProps = useBlockProps( {\n\t\tclassName: classnames( 'wp-block-page-list', {\n\t\t\t'has-text-color': !! context.textColor,\n\t\t\t[ getColorClassName( 'color', context.textColor ) ]:\n\t\t\t\t!! context.textColor,\n\t\t\t'has-background': !! context.backgroundColor,\n\t\t\t[ getColorClassName(\n\t\t\t\t'background-color',\n\t\t\t\tcontext.backgroundColor\n\t\t\t) ]: !! context.backgroundColor,\n\t\t} ),\n\t\tstyle: { ...context.style?.color },\n\t} );\n\n\tconst pagesTree = useMemo(\n\t\tfunction makePagesTree( parentId = 0, level = 0 ) {\n\t\t\tconst childPages = pagesByParentId.get( parentId );\n\n\t\t\tif ( ! childPages?.length ) {\n\t\t\t\treturn [];\n\t\t\t}\n\n\t\t\treturn childPages.reduce( ( tree, page ) => {\n\t\t\t\tconst hasChildren = pagesByParentId.has( page.id );\n\t\t\t\tconst item = {\n\t\t\t\t\tvalue: page.id,\n\t\t\t\t\tlabel: '— '.repeat( level ) + page.title.rendered,\n\t\t\t\t\trawName: page.title.rendered,\n\t\t\t\t};\n\t\t\t\ttree.push( item );\n\t\t\t\tif ( hasChildren ) {\n\t\t\t\t\ttree.push( ...makePagesTree( page.id, level + 1 ) );\n\t\t\t\t}\n\t\t\t\treturn tree;\n\t\t\t}, [] );\n\t\t},\n\t\t[ pagesByParentId ]\n\t);\n\n\tconst blockList = useMemo(\n\t\tfunction getBlockList( parentId = parentPageID ) {\n\t\t\tconst childPages = pagesByParentId.get( parentId );\n\n\t\t\tif ( ! childPages?.length ) {\n\t\t\t\treturn [];\n\t\t\t}\n\n\t\t\treturn childPages.reduce( ( template, page ) => {\n\t\t\t\tconst hasChildren = pagesByParentId.has( page.id );\n\t\t\t\tconst pageProps = {\n\t\t\t\t\tid: page.id,\n\t\t\t\t\tlabel:\n\t\t\t\t\t\t// translators: displayed when a page has an empty title.\n\t\t\t\t\t\tpage.title?.rendered?.trim() !== ''\n\t\t\t\t\t\t\t? page.title?.rendered\n\t\t\t\t\t\t\t: __( '(no title)' ),\n\t\t\t\t\ttitle: page.title?.rendered,\n\t\t\t\t\tlink: page.url,\n\t\t\t\t\thasChildren,\n\t\t\t\t};\n\t\t\t\tlet item = null;\n\t\t\t\tconst children = getBlockList( page.id );\n\t\t\t\titem = createBlock(\n\t\t\t\t\t'core/page-list-item',\n\t\t\t\t\tpageProps,\n\t\t\t\t\tchildren\n\t\t\t\t);\n\t\t\t\ttemplate.push( item );\n\n\t\t\t\treturn template;\n\t\t\t}, [] );\n\t\t},\n\t\t[ pagesByParentId, parentPageID ]\n\t);\n\n\tconst {\n\t\tisNested,\n\t\thasSelectedChild,\n\t\tparentClientId,\n\t\thasDraggedChild,\n\t\tisChildOfNavigation,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tgetBlockParentsByBlockName,\n\t\t\t\thasSelectedInnerBlock,\n\t\t\t\thasDraggedInnerBlock,\n\t\t\t} = select( blockEditorStore );\n\t\t\tconst blockParents = getBlockParentsByBlockName(\n\t\t\t\tclientId,\n\t\t\t\t'core/navigation-submenu',\n\t\t\t\ttrue\n\t\t\t);\n\t\t\tconst navigationBlockParents = getBlockParentsByBlockName(\n\t\t\t\tclientId,\n\t\t\t\t'core/navigation',\n\t\t\t\ttrue\n\t\t\t);\n\t\t\treturn {\n\t\t\t\tisNested: blockParents.length > 0,\n\t\t\t\tisChildOfNavigation: navigationBlockParents.length > 0,\n\t\t\t\thasSelectedChild: hasSelectedInnerBlock( clientId, true ),\n\t\t\t\thasDraggedChild: hasDraggedInnerBlock( clientId, true ),\n\t\t\t\tparentClientId: navigationBlockParents[ 0 ],\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\n\tconst convertToNavigationLinks = useConvertToNavigationLinks( {\n\t\tclientId,\n\t\tpages,\n\t\tparentClientId,\n\t\tparentPageID,\n\t} );\n\n\tconst innerBlocksProps = useInnerBlocksProps( blockProps, {\n\t\trenderAppender: false,\n\t\t__unstableDisableDropZone: true,\n\t\ttemplateLock: isChildOfNavigation ? false : 'all',\n\t\tonInput: NOOP,\n\t\tonChange: NOOP,\n\t\tvalue: blockList,\n\t} );\n\n\tconst { selectBlock } = useDispatch( blockEditorStore );\n\n\tuseEffect( () => {\n\t\tif ( hasSelectedChild || hasDraggedChild ) {\n\t\t\topenModal();\n\t\t\tselectBlock( parentClientId );\n\t\t}\n\t}, [\n\t\thasSelectedChild,\n\t\thasDraggedChild,\n\t\tparentClientId,\n\t\tselectBlock,\n\t\topenModal,\n\t] );\n\n\tuseEffect( () => {\n\t\tsetAttributes( { isNested } );\n\t}, [ isNested, setAttributes ] );\n\n\treturn (\n\t\t<>\n\t\t\t<InspectorControls>\n\t\t\t\t{ pagesTree.length > 0 && (\n\t\t\t\t\t<PanelBody>\n\t\t\t\t\t\t<ComboboxControl\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\tclassName=\"editor-page-attributes__parent\"\n\t\t\t\t\t\t\tlabel={ __( 'Parent' ) }\n\t\t\t\t\t\t\tvalue={ parentPageID }\n\t\t\t\t\t\t\toptions={ pagesTree }\n\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\tsetAttributes( { parentPageID: value ?? 0 } )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t\t'Choose a page to show only its subpages.'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</PanelBody>\n\t\t\t\t) }\n\t\t\t\t{ allowConvertToLinks && (\n\t\t\t\t\t<PanelBody title={ __( 'Edit this menu' ) }>\n\t\t\t\t\t\t<p>{ convertDescription }</p>\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\t\tdisabled={ ! hasResolvedPages }\n\t\t\t\t\t\t\tonClick={ convertToNavigationLinks }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __( 'Edit' ) }\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t</PanelBody>\n\t\t\t\t) }\n\t\t\t</InspectorControls>\n\t\t\t{ allowConvertToLinks && (\n\t\t\t\t<>\n\t\t\t\t\t<BlockControls group=\"other\">\n\t\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\t\ttitle={ __( 'Edit' ) }\n\t\t\t\t\t\t\tonClick={ openModal }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __( 'Edit' ) }\n\t\t\t\t\t\t</ToolbarButton>\n\t\t\t\t\t</BlockControls>\n\t\t\t\t\t{ isOpen && (\n\t\t\t\t\t\t<ConvertToLinksModal\n\t\t\t\t\t\t\tonClick={ convertToNavigationLinks }\n\t\t\t\t\t\t\tonClose={ closeModal }\n\t\t\t\t\t\t\tdisabled={ ! hasResolvedPages }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</>\n\t\t\t) }\n\t\t\t<BlockContent\n\t\t\t\tblockProps={ blockProps }\n\t\t\t\tinnerBlocksProps={ innerBlocksProps }\n\t\t\t\thasResolvedPages={ hasResolvedPages }\n\t\t\t\tblockList={ blockList }\n\t\t\t\tpages={ pages }\n\t\t\t\tparentPageID={ parentPageID }\n\t\t\t/>\n\t\t</>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_clsx","_interopRequireDefault","require","_blocks","_blockEditor","_components","_i18n","_element","_coreData","_data","_useConvertToNavigationLinks","_convertToLinksModal","MAX_PAGE_COUNT","NOOP","BlockContent","blockProps","innerBlocksProps","hasResolvedPages","blockList","pages","parentPageID","_react","createElement","className","Spinner","Notice","status","isDismissible","__","length","parentPageDetails","find","page","id","title","rendered","Warning","sprintf","PageListEdit","context","clientId","attributes","setAttributes","isOpen","setOpen","useState","openModal","useCallback","closeModal","records","hasResolved","useEntityRecords","per_page","_fields","orderby","order","allowConvertToLinks","pagesByParentId","useMemo","Map","sortedPages","sort","a","b","menu_order","localeCompare","reduce","accumulator","parent","has","get","push","set","useBlockProps","clsx","textColor","getColorClassName","backgroundColor","style","color","pagesTree","makePagesTree","parentId","level","childPages","tree","hasChildren","item","value","label","repeat","rawName","getBlockList","template","pageProps","trim","link","url","children","createBlock","isNested","hasSelectedChild","parentClientId","hasDraggedChild","isChildOfNavigation","useSelect","select","getBlockParentsByBlockName","hasSelectedInnerBlock","hasDraggedInnerBlock","blockEditorStore","blockParents","navigationBlockParents","convertToNavigationLinks","useConvertToNavigationLinks","useInnerBlocksProps","renderAppender","__unstableDisableDropZone","templateLock","onInput","onChange","selectBlock","useDispatch","useEffect","Fragment","InspectorControls","PanelBody","ComboboxControl","__next40pxDefaultSize","options","help","convertDescription","Button","variant","disabled","onClick","BlockControls","group","ToolbarButton","ConvertToLinksModal","onClose"],"sources":["@wordpress/block-library/src/page-list/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { createBlock } from '@wordpress/blocks';\nimport {\n\tInspectorControls,\n\tBlockControls,\n\tuseBlockProps,\n\tuseInnerBlocksProps,\n\tgetColorClassName,\n\tstore as blockEditorStore,\n\tWarning,\n} from '@wordpress/block-editor';\nimport {\n\tPanelBody,\n\tToolbarButton,\n\tSpinner,\n\tNotice,\n\tComboboxControl,\n\tButton,\n} from '@wordpress/components';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { useMemo, useState, useEffect, useCallback } from '@wordpress/element';\nimport { useEntityRecords } from '@wordpress/core-data';\nimport { useSelect, useDispatch } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport { useConvertToNavigationLinks } from './use-convert-to-navigation-links';\nimport {\n\tconvertDescription,\n\tConvertToLinksModal,\n} from './convert-to-links-modal';\n\n// We only show the edit option when page count is <= MAX_PAGE_COUNT\n// Performance of Navigation Links is not good past this value.\nconst MAX_PAGE_COUNT = 100;\nconst NOOP = () => {};\nfunction BlockContent( {\n\tblockProps,\n\tinnerBlocksProps,\n\thasResolvedPages,\n\tblockList,\n\tpages,\n\tparentPageID,\n} ) {\n\tif ( ! hasResolvedPages ) {\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t<div className=\"wp-block-page-list__loading-indicator-container\">\n\t\t\t\t\t<Spinner className=\"wp-block-page-list__loading-indicator\" />\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t);\n\t}\n\n\tif ( pages === null ) {\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t<Notice status={ 'warning' } isDismissible={ false }>\n\t\t\t\t\t{ __( 'Page List: Cannot retrieve Pages.' ) }\n\t\t\t\t</Notice>\n\t\t\t</div>\n\t\t);\n\t}\n\n\tif ( pages.length === 0 ) {\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t<Notice status={ 'info' } isDismissible={ false }>\n\t\t\t\t\t{ __( 'Page List: Cannot retrieve Pages.' ) }\n\t\t\t\t</Notice>\n\t\t\t</div>\n\t\t);\n\t}\n\n\tif ( blockList.length === 0 ) {\n\t\tconst parentPageDetails = pages.find(\n\t\t\t( page ) => page.id === parentPageID\n\t\t);\n\n\t\tif ( parentPageDetails?.title?.rendered ) {\n\t\t\treturn (\n\t\t\t\t<div { ...blockProps }>\n\t\t\t\t\t<Warning>\n\t\t\t\t\t\t{ sprintf(\n\t\t\t\t\t\t\t// translators: %s: Page title.\n\t\t\t\t\t\t\t__( 'Page List: \"%s\" page has no children.' ),\n\t\t\t\t\t\t\tparentPageDetails.title.rendered\n\t\t\t\t\t\t) }\n\t\t\t\t\t</Warning>\n\t\t\t\t</div>\n\t\t\t);\n\t\t}\n\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t<Notice status={ 'warning' } isDismissible={ false }>\n\t\t\t\t\t{ __( 'Page List: Cannot retrieve Pages.' ) }\n\t\t\t\t</Notice>\n\t\t\t</div>\n\t\t);\n\t}\n\n\tif ( pages.length > 0 ) {\n\t\treturn <ul { ...innerBlocksProps }></ul>;\n\t}\n}\n\nexport default function PageListEdit( {\n\tcontext,\n\tclientId,\n\tattributes,\n\tsetAttributes,\n} ) {\n\tconst { parentPageID } = attributes;\n\tconst [ isOpen, setOpen ] = useState( false );\n\tconst openModal = useCallback( () => setOpen( true ), [] );\n\tconst closeModal = () => setOpen( false );\n\n\tconst { records: pages, hasResolved: hasResolvedPages } = useEntityRecords(\n\t\t'postType',\n\t\t'page',\n\t\t{\n\t\t\tper_page: MAX_PAGE_COUNT,\n\t\t\t_fields: [ 'id', 'link', 'menu_order', 'parent', 'title', 'type' ],\n\t\t\t// TODO: When https://core.trac.wordpress.org/ticket/39037 REST API support for multiple orderby\n\t\t\t// values is resolved, update 'orderby' to [ 'menu_order', 'post_title' ] to provide a consistent\n\t\t\t// sort.\n\t\t\torderby: 'menu_order',\n\t\t\torder: 'asc',\n\t\t}\n\t);\n\n\tconst allowConvertToLinks =\n\t\t'showSubmenuIcon' in context &&\n\t\tpages?.length > 0 &&\n\t\tpages?.length <= MAX_PAGE_COUNT;\n\n\tconst pagesByParentId = useMemo( () => {\n\t\tif ( pages === null ) {\n\t\t\treturn new Map();\n\t\t}\n\n\t\t// TODO: Once the REST API supports passing multiple values to\n\t\t// 'orderby', this can be removed.\n\t\t// https://core.trac.wordpress.org/ticket/39037\n\t\tconst sortedPages = pages.sort( ( a, b ) => {\n\t\t\tif ( a.menu_order === b.menu_order ) {\n\t\t\t\treturn a.title.rendered.localeCompare( b.title.rendered );\n\t\t\t}\n\t\t\treturn a.menu_order - b.menu_order;\n\t\t} );\n\n\t\treturn sortedPages.reduce( ( accumulator, page ) => {\n\t\t\tconst { parent } = page;\n\t\t\tif ( accumulator.has( parent ) ) {\n\t\t\t\taccumulator.get( parent ).push( page );\n\t\t\t} else {\n\t\t\t\taccumulator.set( parent, [ page ] );\n\t\t\t}\n\t\t\treturn accumulator;\n\t\t}, new Map() );\n\t}, [ pages ] );\n\n\tconst blockProps = useBlockProps( {\n\t\tclassName: clsx( 'wp-block-page-list', {\n\t\t\t'has-text-color': !! context.textColor,\n\t\t\t[ getColorClassName( 'color', context.textColor ) ]:\n\t\t\t\t!! context.textColor,\n\t\t\t'has-background': !! context.backgroundColor,\n\t\t\t[ getColorClassName(\n\t\t\t\t'background-color',\n\t\t\t\tcontext.backgroundColor\n\t\t\t) ]: !! context.backgroundColor,\n\t\t} ),\n\t\tstyle: { ...context.style?.color },\n\t} );\n\n\tconst pagesTree = useMemo(\n\t\tfunction makePagesTree( parentId = 0, level = 0 ) {\n\t\t\tconst childPages = pagesByParentId.get( parentId );\n\n\t\t\tif ( ! childPages?.length ) {\n\t\t\t\treturn [];\n\t\t\t}\n\n\t\t\treturn childPages.reduce( ( tree, page ) => {\n\t\t\t\tconst hasChildren = pagesByParentId.has( page.id );\n\t\t\t\tconst item = {\n\t\t\t\t\tvalue: page.id,\n\t\t\t\t\tlabel: '— '.repeat( level ) + page.title.rendered,\n\t\t\t\t\trawName: page.title.rendered,\n\t\t\t\t};\n\t\t\t\ttree.push( item );\n\t\t\t\tif ( hasChildren ) {\n\t\t\t\t\ttree.push( ...makePagesTree( page.id, level + 1 ) );\n\t\t\t\t}\n\t\t\t\treturn tree;\n\t\t\t}, [] );\n\t\t},\n\t\t[ pagesByParentId ]\n\t);\n\n\tconst blockList = useMemo(\n\t\tfunction getBlockList( parentId = parentPageID ) {\n\t\t\tconst childPages = pagesByParentId.get( parentId );\n\n\t\t\tif ( ! childPages?.length ) {\n\t\t\t\treturn [];\n\t\t\t}\n\n\t\t\treturn childPages.reduce( ( template, page ) => {\n\t\t\t\tconst hasChildren = pagesByParentId.has( page.id );\n\t\t\t\tconst pageProps = {\n\t\t\t\t\tid: page.id,\n\t\t\t\t\tlabel:\n\t\t\t\t\t\t// translators: displayed when a page has an empty title.\n\t\t\t\t\t\tpage.title?.rendered?.trim() !== ''\n\t\t\t\t\t\t\t? page.title?.rendered\n\t\t\t\t\t\t\t: __( '(no title)' ),\n\t\t\t\t\ttitle: page.title?.rendered,\n\t\t\t\t\tlink: page.url,\n\t\t\t\t\thasChildren,\n\t\t\t\t};\n\t\t\t\tlet item = null;\n\t\t\t\tconst children = getBlockList( page.id );\n\t\t\t\titem = createBlock(\n\t\t\t\t\t'core/page-list-item',\n\t\t\t\t\tpageProps,\n\t\t\t\t\tchildren\n\t\t\t\t);\n\t\t\t\ttemplate.push( item );\n\n\t\t\t\treturn template;\n\t\t\t}, [] );\n\t\t},\n\t\t[ pagesByParentId, parentPageID ]\n\t);\n\n\tconst {\n\t\tisNested,\n\t\thasSelectedChild,\n\t\tparentClientId,\n\t\thasDraggedChild,\n\t\tisChildOfNavigation,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tgetBlockParentsByBlockName,\n\t\t\t\thasSelectedInnerBlock,\n\t\t\t\thasDraggedInnerBlock,\n\t\t\t} = select( blockEditorStore );\n\t\t\tconst blockParents = getBlockParentsByBlockName(\n\t\t\t\tclientId,\n\t\t\t\t'core/navigation-submenu',\n\t\t\t\ttrue\n\t\t\t);\n\t\t\tconst navigationBlockParents = getBlockParentsByBlockName(\n\t\t\t\tclientId,\n\t\t\t\t'core/navigation',\n\t\t\t\ttrue\n\t\t\t);\n\t\t\treturn {\n\t\t\t\tisNested: blockParents.length > 0,\n\t\t\t\tisChildOfNavigation: navigationBlockParents.length > 0,\n\t\t\t\thasSelectedChild: hasSelectedInnerBlock( clientId, true ),\n\t\t\t\thasDraggedChild: hasDraggedInnerBlock( clientId, true ),\n\t\t\t\tparentClientId: navigationBlockParents[ 0 ],\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\n\tconst convertToNavigationLinks = useConvertToNavigationLinks( {\n\t\tclientId,\n\t\tpages,\n\t\tparentClientId,\n\t\tparentPageID,\n\t} );\n\n\tconst innerBlocksProps = useInnerBlocksProps( blockProps, {\n\t\trenderAppender: false,\n\t\t__unstableDisableDropZone: true,\n\t\ttemplateLock: isChildOfNavigation ? false : 'all',\n\t\tonInput: NOOP,\n\t\tonChange: NOOP,\n\t\tvalue: blockList,\n\t} );\n\n\tconst { selectBlock } = useDispatch( blockEditorStore );\n\n\tuseEffect( () => {\n\t\tif ( hasSelectedChild || hasDraggedChild ) {\n\t\t\topenModal();\n\t\t\tselectBlock( parentClientId );\n\t\t}\n\t}, [\n\t\thasSelectedChild,\n\t\thasDraggedChild,\n\t\tparentClientId,\n\t\tselectBlock,\n\t\topenModal,\n\t] );\n\n\tuseEffect( () => {\n\t\tsetAttributes( { isNested } );\n\t}, [ isNested, setAttributes ] );\n\n\treturn (\n\t\t<>\n\t\t\t<InspectorControls>\n\t\t\t\t{ pagesTree.length > 0 && (\n\t\t\t\t\t<PanelBody>\n\t\t\t\t\t\t<ComboboxControl\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\tclassName=\"editor-page-attributes__parent\"\n\t\t\t\t\t\t\tlabel={ __( 'Parent' ) }\n\t\t\t\t\t\t\tvalue={ parentPageID }\n\t\t\t\t\t\t\toptions={ pagesTree }\n\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\tsetAttributes( { parentPageID: value ?? 0 } )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t\t'Choose a page to show only its subpages.'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</PanelBody>\n\t\t\t\t) }\n\t\t\t\t{ allowConvertToLinks && (\n\t\t\t\t\t<PanelBody title={ __( 'Edit this menu' ) }>\n\t\t\t\t\t\t<p>{ convertDescription }</p>\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\t\tdisabled={ ! hasResolvedPages }\n\t\t\t\t\t\t\tonClick={ convertToNavigationLinks }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __( 'Edit' ) }\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t</PanelBody>\n\t\t\t\t) }\n\t\t\t</InspectorControls>\n\t\t\t{ allowConvertToLinks && (\n\t\t\t\t<>\n\t\t\t\t\t<BlockControls group=\"other\">\n\t\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\t\ttitle={ __( 'Edit' ) }\n\t\t\t\t\t\t\tonClick={ openModal }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __( 'Edit' ) }\n\t\t\t\t\t\t</ToolbarButton>\n\t\t\t\t\t</BlockControls>\n\t\t\t\t\t{ isOpen && (\n\t\t\t\t\t\t<ConvertToLinksModal\n\t\t\t\t\t\t\tonClick={ convertToNavigationLinks }\n\t\t\t\t\t\t\tonClose={ closeModal }\n\t\t\t\t\t\t\tdisabled={ ! hasResolvedPages }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</>\n\t\t\t) }\n\t\t\t<BlockContent\n\t\t\t\tblockProps={ blockProps }\n\t\t\t\tinnerBlocksProps={ innerBlocksProps }\n\t\t\t\thasResolvedPages={ hasResolvedPages }\n\t\t\t\tblockList={ blockList }\n\t\t\t\tpages={ pages }\n\t\t\t\tparentPageID={ parentPageID }\n\t\t\t/>\n\t\t</>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
});
|
|
7
7
|
exports.default = PageListItemEdit;
|
|
8
8
|
var _react = require("react");
|
|
9
|
-
var
|
|
9
|
+
var _clsx = _interopRequireDefault(require("clsx"));
|
|
10
10
|
var _blockEditor = require("@wordpress/block-editor");
|
|
11
11
|
var _data = require("@wordpress/data");
|
|
12
12
|
var _coreData = require("@wordpress/core-data");
|
|
@@ -56,7 +56,7 @@ function PageListItemEdit({
|
|
|
56
56
|
const innerBlocksProps = (0, _blockEditor.useInnerBlocksProps)(blockProps);
|
|
57
57
|
return (0, _react.createElement)("li", {
|
|
58
58
|
key: id,
|
|
59
|
-
className: (0,
|
|
59
|
+
className: (0, _clsx.default)('wp-block-pages-list__item', {
|
|
60
60
|
'has-child': hasChildren,
|
|
61
61
|
'wp-block-navigation-item': isNavigationChild,
|
|
62
62
|
'open-on-click': context.openSubmenusOnClick,
|
|
@@ -70,7 +70,7 @@ function PageListItemEdit({
|
|
|
70
70
|
}, (0, _htmlEntities.decodeEntities)(label)), (0, _react.createElement)("span", {
|
|
71
71
|
className: "wp-block-page-list__submenu-icon wp-block-navigation__submenu-icon"
|
|
72
72
|
}, (0, _react.createElement)(_icons.ItemSubmenuIcon, null))) : (0, _react.createElement)("a", {
|
|
73
|
-
className: (0,
|
|
73
|
+
className: (0, _clsx.default)('wp-block-pages-list__item__link', {
|
|
74
74
|
'wp-block-navigation-item__content': isNavigationChild
|
|
75
75
|
}),
|
|
76
76
|
href: link
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["
|
|
1
|
+
{"version":3,"names":["_clsx","_interopRequireDefault","require","_blockEditor","_data","_coreData","_htmlEntities","_icons","_utils","useFrontPageId","useSelect","select","canReadSettings","coreStore","canUser","undefined","site","getEntityRecord","show_on_front","page_on_front","PageListItemEdit","context","attributes","id","label","link","hasChildren","title","isNavigationChild","frontPageId","innerBlocksColors","getColors","navigationChildBlockProps","getNavigationChildBlockProps","blockProps","useBlockProps","className","innerBlocksProps","useInnerBlocksProps","_react","createElement","key","clsx","openSubmenusOnClick","showSubmenuIcon","Fragment","type","decodeEntities","ItemSubmenuIcon","href"],"sources":["@wordpress/block-library/src/page-list-item/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n/**\n * WordPress dependencies\n */\nimport { useBlockProps, useInnerBlocksProps } from '@wordpress/block-editor';\nimport { useSelect } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { decodeEntities } from '@wordpress/html-entities';\n\n/**\n * Internal dependencies\n */\nimport { ItemSubmenuIcon } from '../navigation-link/icons';\nimport {\n\tgetColors,\n\tgetNavigationChildBlockProps,\n} from '../navigation/edit/utils';\n\nfunction useFrontPageId() {\n\treturn useSelect( ( select ) => {\n\t\tconst canReadSettings = select( coreStore ).canUser(\n\t\t\t'read',\n\t\t\t'settings'\n\t\t);\n\t\tif ( ! canReadSettings ) {\n\t\t\treturn undefined;\n\t\t}\n\n\t\tconst site = select( coreStore ).getEntityRecord( 'root', 'site' );\n\t\treturn site?.show_on_front === 'page' && site?.page_on_front;\n\t}, [] );\n}\n\nexport default function PageListItemEdit( { context, attributes } ) {\n\tconst { id, label, link, hasChildren, title } = attributes;\n\tconst isNavigationChild = 'showSubmenuIcon' in context;\n\tconst frontPageId = useFrontPageId();\n\n\tconst innerBlocksColors = getColors( context, true );\n\n\tconst navigationChildBlockProps =\n\t\tgetNavigationChildBlockProps( innerBlocksColors );\n\tconst blockProps = useBlockProps( navigationChildBlockProps, {\n\t\tclassName: 'wp-block-pages-list__item',\n\t} );\n\n\tconst innerBlocksProps = useInnerBlocksProps( blockProps );\n\n\treturn (\n\t\t<li\n\t\t\tkey={ id }\n\t\t\tclassName={ clsx( 'wp-block-pages-list__item', {\n\t\t\t\t'has-child': hasChildren,\n\t\t\t\t'wp-block-navigation-item': isNavigationChild,\n\t\t\t\t'open-on-click': context.openSubmenusOnClick,\n\t\t\t\t'open-on-hover-click':\n\t\t\t\t\t! context.openSubmenusOnClick && context.showSubmenuIcon,\n\t\t\t\t'menu-item-home': id === frontPageId,\n\t\t\t} ) }\n\t\t>\n\t\t\t{ hasChildren && context.openSubmenusOnClick ? (\n\t\t\t\t<>\n\t\t\t\t\t<button\n\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\tclassName=\"wp-block-navigation-item__content wp-block-navigation-submenu__toggle\"\n\t\t\t\t\t\taria-expanded=\"false\"\n\t\t\t\t\t>\n\t\t\t\t\t\t{ decodeEntities( label ) }\n\t\t\t\t\t</button>\n\t\t\t\t\t<span className=\"wp-block-page-list__submenu-icon wp-block-navigation__submenu-icon\">\n\t\t\t\t\t\t<ItemSubmenuIcon />\n\t\t\t\t\t</span>\n\t\t\t\t</>\n\t\t\t) : (\n\t\t\t\t<a\n\t\t\t\t\tclassName={ clsx( 'wp-block-pages-list__item__link', {\n\t\t\t\t\t\t'wp-block-navigation-item__content': isNavigationChild,\n\t\t\t\t\t} ) }\n\t\t\t\t\thref={ link }\n\t\t\t\t>\n\t\t\t\t\t{ decodeEntities( title ) }\n\t\t\t\t</a>\n\t\t\t) }\n\t\t\t{ hasChildren && (\n\t\t\t\t<>\n\t\t\t\t\t{ ! context.openSubmenusOnClick &&\n\t\t\t\t\t\tcontext.showSubmenuIcon && (\n\t\t\t\t\t\t\t<button\n\t\t\t\t\t\t\t\tclassName=\"wp-block-navigation-item__content wp-block-navigation-submenu__toggle wp-block-page-list__submenu-icon wp-block-navigation__submenu-icon\"\n\t\t\t\t\t\t\t\taria-expanded=\"false\"\n\t\t\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<ItemSubmenuIcon />\n\t\t\t\t\t\t\t</button>\n\t\t\t\t\t\t) }\n\t\t\t\t\t<ul { ...innerBlocksProps }></ul>\n\t\t\t\t</>\n\t\t\t) }\n\t\t</li>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|