@wordpress/block-library 8.33.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 +10 -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 +25 -160
- package/build/block/edit.js.map +1 -1
- package/build/block-keyboard-shortcuts/index.js +95 -0
- package/build/block-keyboard-shortcuts/index.js.map +1 -0
- 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 +30 -21
- package/build/column/edit.js.map +1 -1
- package/build/column/edit.native.js +3 -1
- package/build/column/edit.native.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 +70 -54
- 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/columns/variations.js +18 -28
- package/build/columns/variations.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/comment-template/util.js +3 -1
- package/build/comment-template/util.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/cover/shared.js +3 -1
- package/build/cover/shared.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-placeholder.js +8 -3
- package/build/embed/embed-placeholder.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 +13 -9
- package/build/embed/util.js.map +1 -1
- package/build/embed/variations.js +12 -1
- package/build/embed/variations.js.map +1 -1
- package/build/embed/wp-embed-preview.js +6 -2
- package/build/embed/wp-embed-preview.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/group/index.js +0 -8
- package/build/group/index.js.map +1 -1
- package/build/group/placeholder.js +18 -19
- package/build/group/placeholder.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 +8 -4
- 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/image/view.js +3 -1
- package/build/image/view.js.map +1 -1
- package/build/index.js +9 -1
- package/build/index.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/hooks/use-merge.js +12 -4
- package/build/list-item/hooks/use-merge.js.map +1 -1
- package/build/list-item/hooks/use-outdent-list-item.js +15 -5
- package/build/list-item/hooks/use-outdent-list-item.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/are-blocks-dirty.js +9 -3
- package/build/navigation/edit/are-blocks-dirty.js.map +1 -1
- package/build/navigation/edit/deleted-navigation-warning.js +1 -1
- package/build/navigation/edit/deleted-navigation-warning.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/menu-inspector-controls.js +3 -1
- package/build/navigation/edit/menu-inspector-controls.js.map +1 -1
- package/build/navigation/edit/navigation-menu-selector.js +1 -1
- package/build/navigation/edit/navigation-menu-selector.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/index.js +0 -9
- package/build/navigation/index.js.map +1 -1
- package/build/navigation/view.js +3 -1
- package/build/navigation/view.js.map +1 -1
- package/build/navigation-link/edit.js +97 -88
- package/build/navigation-link/edit.js.map +1 -1
- package/build/navigation-link/link-ui.js +2 -7
- package/build/navigation-link/link-ui.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 -1
- 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 -1
- 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 +6 -4
- package/build/post-excerpt/edit.js.map +1 -1
- package/build/post-featured-image/dimension-controls.js +23 -29
- 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-navigation-link/variations.js +3 -1
- package/build/post-navigation-link/variations.js.map +1 -1
- package/build/post-template/edit.js +22 -12
- package/build/post-template/edit.js.map +1 -1
- package/build/post-terms/edit.js +5 -3
- 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/private-apis.js +21 -0
- package/build/private-apis.js.map +1 -0
- 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/edit/enhanced-pagination-modal.js +1 -1
- package/build/query/edit/enhanced-pagination-modal.js.map +1 -1
- package/build/query/edit/inspector-controls/author-control.js +6 -2
- package/build/query/edit/inspector-controls/author-control.js.map +1 -1
- package/build/query/edit/inspector-controls/create-new-post-link.js +3 -1
- package/build/query/edit/inspector-controls/create-new-post-link.js.map +1 -1
- package/build/query/edit/inspector-controls/enhanced-pagination-control.js +6 -3
- package/build/query/edit/inspector-controls/enhanced-pagination-control.js.map +1 -1
- package/build/query/edit/inspector-controls/parent-control.js +18 -6
- package/build/query/edit/inspector-controls/parent-control.js.map +1 -1
- package/build/query/edit/inspector-controls/taxonomy-controls.js +9 -3
- package/build/query/edit/inspector-controls/taxonomy-controls.js.map +1 -1
- package/build/query/utils.js +3 -1
- package/build/query/utils.js.map +1 -1
- package/build/query-title/edit.js +2 -2
- package/build/query-title/edit.js.map +1 -1
- package/build/query-title/variations.js +3 -1
- package/build/query-title/variations.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 +4 -4
- package/build/social-link/edit.js.map +1 -1
- package/build/social-link/variations.js +3 -1
- package/build/social-link/variations.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/template-part/variations.js +6 -2
- package/build/template-part/variations.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 +29 -164
- package/build-module/block/edit.js.map +1 -1
- package/build-module/block-keyboard-shortcuts/index.js +88 -0
- package/build-module/block-keyboard-shortcuts/index.js.map +1 -0
- 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 +30 -21
- package/build-module/column/edit.js.map +1 -1
- package/build-module/column/edit.native.js +3 -1
- package/build-module/column/edit.native.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 +70 -54
- 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/columns/variations.js +18 -28
- package/build-module/columns/variations.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/comment-template/util.js +3 -1
- package/build-module/comment-template/util.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/cover/shared.js +3 -1
- package/build-module/cover/shared.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-placeholder.js +9 -4
- package/build-module/embed/embed-placeholder.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 +13 -9
- package/build-module/embed/util.js.map +1 -1
- package/build-module/embed/variations.js +13 -2
- package/build-module/embed/variations.js.map +1 -1
- package/build-module/embed/wp-embed-preview.js +6 -2
- package/build-module/embed/wp-embed-preview.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/group/index.js +0 -8
- package/build-module/group/index.js.map +1 -1
- package/build-module/group/placeholder.js +18 -19
- package/build-module/group/placeholder.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 +8 -4
- 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/image/view.js +3 -1
- package/build-module/image/view.js.map +1 -1
- package/build-module/index.js +1 -0
- package/build-module/index.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/hooks/use-merge.js +12 -4
- package/build-module/list-item/hooks/use-merge.js.map +1 -1
- package/build-module/list-item/hooks/use-outdent-list-item.js +15 -5
- package/build-module/list-item/hooks/use-outdent-list-item.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/are-blocks-dirty.js +9 -3
- package/build-module/navigation/edit/are-blocks-dirty.js.map +1 -1
- package/build-module/navigation/edit/deleted-navigation-warning.js +1 -1
- package/build-module/navigation/edit/deleted-navigation-warning.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/menu-inspector-controls.js +3 -1
- package/build-module/navigation/edit/menu-inspector-controls.js.map +1 -1
- package/build-module/navigation/edit/navigation-menu-selector.js +1 -1
- package/build-module/navigation/edit/navigation-menu-selector.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/index.js +0 -9
- package/build-module/navigation/index.js.map +1 -1
- package/build-module/navigation/view.js +3 -1
- package/build-module/navigation/view.js.map +1 -1
- package/build-module/navigation-link/edit.js +97 -88
- package/build-module/navigation-link/edit.js.map +1 -1
- package/build-module/navigation-link/link-ui.js +3 -8
- package/build-module/navigation-link/link-ui.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 -1
- 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 -1
- 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 +6 -4
- package/build-module/post-excerpt/edit.js.map +1 -1
- package/build-module/post-featured-image/dimension-controls.js +23 -29
- 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-navigation-link/variations.js +3 -1
- package/build-module/post-navigation-link/variations.js.map +1 -1
- package/build-module/post-template/edit.js +23 -13
- package/build-module/post-template/edit.js.map +1 -1
- package/build-module/post-terms/edit.js +5 -3
- 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/private-apis.js +14 -0
- package/build-module/private-apis.js.map +1 -0
- 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/edit/enhanced-pagination-modal.js +1 -1
- package/build-module/query/edit/enhanced-pagination-modal.js.map +1 -1
- package/build-module/query/edit/inspector-controls/author-control.js +6 -2
- package/build-module/query/edit/inspector-controls/author-control.js.map +1 -1
- package/build-module/query/edit/inspector-controls/create-new-post-link.js +3 -1
- package/build-module/query/edit/inspector-controls/create-new-post-link.js.map +1 -1
- package/build-module/query/edit/inspector-controls/enhanced-pagination-control.js +6 -3
- package/build-module/query/edit/inspector-controls/enhanced-pagination-control.js.map +1 -1
- package/build-module/query/edit/inspector-controls/parent-control.js +18 -6
- package/build-module/query/edit/inspector-controls/parent-control.js.map +1 -1
- package/build-module/query/edit/inspector-controls/taxonomy-controls.js +9 -3
- package/build-module/query/edit/inspector-controls/taxonomy-controls.js.map +1 -1
- package/build-module/query/utils.js +3 -1
- package/build-module/query/utils.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/query-title/variations.js +3 -1
- package/build-module/query-title/variations.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 +4 -4
- package/build-module/social-link/edit.js.map +1 -1
- package/build-module/social-link/variations.js +3 -1
- package/build-module/social-link/variations.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/template-part/variations.js +6 -2
- package/build-module/template-part/variations.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 +30 -81
- package/build-style/editor.css +30 -81
- package/build-style/embed/editor-rtl.css +0 -3
- package/build-style/embed/editor.css +0 -3
- package/build-style/group/editor-rtl.css +2 -45
- package/build-style/group/editor.css +2 -45
- package/build-style/group/style-rtl.css +4 -0
- package/build-style/group/style.css +4 -0
- 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/navigation-link/style-rtl.css +0 -8
- package/build-style/navigation-link/style.css +0 -8
- package/build-style/post-featured-image/editor-rtl.css +1 -0
- package/build-style/post-featured-image/editor.css +1 -0
- 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/site-logo/editor-rtl.css +1 -0
- package/build-style/site-logo/editor.css +1 -0
- package/build-style/social-link/editor-rtl.css +13 -2
- package/build-style/social-link/editor.css +13 -2
- package/build-style/style-rtl.css +9 -21
- package/build-style/style.css +9 -21
- package/build-style/template-part/editor-rtl.css +3 -7
- package/build-style/template-part/editor.css +3 -7
- package/package.json +36 -35
- package/src/audio/edit.js +2 -2
- package/src/avatar/edit.js +2 -2
- package/src/block/edit.js +32 -240
- package/src/block/editor.scss +7 -5
- package/src/block-keyboard-shortcuts/index.js +113 -0
- 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 +28 -22
- package/src/column/edit.native.js +3 -1
- package/src/column/save.js +2 -2
- package/src/columns/deprecated.js +3 -3
- package/src/columns/edit.js +94 -84
- package/src/columns/save.js +2 -2
- package/src/columns/variations.js +12 -34
- 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/comment-template/util.js +3 -1
- 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/cover/shared.js +3 -1
- 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/editor.scss +0 -2
- package/src/embed/embed-placeholder.js +21 -9
- 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 +13 -7
- package/src/embed/variations.js +12 -1
- package/src/embed/wp-embed-preview.js +6 -2
- 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/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 -48
- package/src/group/index.js +0 -8
- package/src/group/placeholder.js +18 -18
- package/src/group/style.scss +5 -0
- 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 +8 -3
- package/src/image/save.js +3 -3
- package/src/image/style.scss +1 -3
- package/src/image/view.js +3 -1
- package/src/index.js +2 -0
- 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/list-item/hooks/use-merge.js +12 -4
- package/src/list-item/hooks/use-outdent-list-item.js +15 -5
- 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/block.json +0 -9
- package/src/navigation/edit/are-blocks-dirty.js +8 -3
- package/src/navigation/edit/deleted-navigation-warning.js +1 -1
- package/src/navigation/edit/index.js +3 -3
- package/src/navigation/edit/menu-inspector-controls.js +3 -1
- package/src/navigation/edit/navigation-menu-selector.js +1 -1
- package/src/navigation/edit/responsive-wrapper.js +3 -3
- package/src/navigation/edit/test/navigation-menu-selector.js +5 -5
- package/src/navigation/edit/utils.js +2 -2
- package/src/navigation/index.php +52 -1
- package/src/navigation/view.js +3 -1
- package/src/navigation-link/edit.js +94 -94
- package/src/navigation-link/link-ui.js +74 -89
- package/src/navigation-link/style.scss +0 -12
- 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 -1
- 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 +6 -4
- package/src/post-featured-image/dimension-controls.js +33 -37
- package/src/post-featured-image/edit.js +3 -3
- package/src/post-featured-image/editor.scss +1 -0
- package/src/post-featured-image/overlay.js +2 -2
- package/src/post-navigation-link/edit.js +2 -2
- package/src/post-navigation-link/variations.js +3 -1
- package/src/post-template/edit.js +14 -9
- package/src/post-template/style.scss +0 -4
- package/src/post-terms/edit.js +5 -3
- package/src/post-time-to-read/edit.js +3 -3
- package/src/post-title/edit.js +2 -2
- package/src/private-apis.js +13 -0
- package/src/pullquote/deprecated.js +7 -7
- package/src/pullquote/edit.js +2 -2
- package/src/pullquote/save.js +2 -2
- package/src/query/edit/enhanced-pagination-modal.js +5 -1
- package/src/query/edit/inspector-controls/author-control.js +6 -2
- package/src/query/edit/inspector-controls/create-new-post-link.js +3 -1
- package/src/query/edit/inspector-controls/enhanced-pagination-control.js +13 -3
- package/src/query/edit/inspector-controls/parent-control.js +18 -6
- package/src/query/edit/inspector-controls/taxonomy-controls.js +9 -3
- package/src/query/index.php +1 -1
- package/src/query/utils.js +3 -1
- package/src/query-title/edit.js +2 -2
- package/src/query-title/variations.js +3 -1
- 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/editor.scss +1 -0
- 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 +5 -5
- package/src/social-link/editor.scss +25 -11
- package/src/social-link/variations.js +3 -1
- 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/template-part/variations.js +6 -2
- 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":["_dom","require","_components","_i18n","_blockEditor","_element","_coreData","_htmlEntities","_data","_icons","_compose","_lockUnlock","PrivateQuickInserter","QuickInserter","unlock","blockEditorPrivateApis","getSuggestionsQuery","type","kind","subtype","initialSuggestionsSearchOptions","perPage","LinkUIBlockInserter","clientId","onBack","onSelectBlock","rootBlockClientId","useSelect","select","getBlockRootClientId","blockEditorStore","focusOnMountRef","useFocusOnMount","dialogTitleId","useInstanceId","LinkControl","dialogDescritionId","_react","createElement","className","role","ref","VisuallyHidden","id","__","Button","icon","chevronLeftSmall","onClick","e","preventDefault","size","rootClientId","isAppender","prioritizePatterns","selectBlockOnInsert","hasSearch","onSelect","LinkUI","props","addingBlock","setAddingBlock","useState","focusAddBlockButton","setFocusAddBlockButton","showBackdrop","setShowBackdrop","saveEntityRecord","useDispatch","coreStore","pagesPermissions","useResourcePermissions","postsPermissions","handleCreate","pageTitle","postType","link","page","title","status","decodeEntities","rendered","url","label","opensInNewTab","userCanCreate","canCreate","useMemo","stripHTML","onClose","Fragment","Popover","placement","anchor","shift","__experimentalLinkControl","hasTextControl","hasRichPreviews","value","showInitialSuggestions","withCreateSuggestion","createSuggestion","createSuggestionButtonText","searchTerm","format","createInterpolateElement","sprintf","mark","noDirectEntry","noURLSuggestion","suggestionsQuery","onChange","onRemove","onCancel","renderControlBottom","length","LinkUITools","blockInserterAriaRole","addBlockButtonRef","useRef","useEffect","current","focus","__experimentalVStack","plus","_default","exports","default"],"sources":["@wordpress/block-library/src/navigation-link/link-ui.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __unstableStripHTML as stripHTML } from '@wordpress/dom';\nimport {\n\tPopover,\n\tButton,\n\tVisuallyHidden,\n\t__experimentalVStack as VStack,\n} from '@wordpress/components';\nimport { __, sprintf } from '@wordpress/i18n';\nimport {\n\t__experimentalLinkControl as LinkControl,\n\tstore as blockEditorStore,\n\tprivateApis as blockEditorPrivateApis,\n} from '@wordpress/block-editor';\nimport {\n\tcreateInterpolateElement,\n\tuseMemo,\n\tuseState,\n\tuseRef,\n\tuseEffect,\n} from '@wordpress/element';\nimport {\n\tstore as coreStore,\n\tuseResourcePermissions,\n} from '@wordpress/core-data';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { chevronLeftSmall, plus } from '@wordpress/icons';\nimport { useInstanceId, useFocusOnMount } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../lock-unlock';\n\nconst { PrivateQuickInserter: QuickInserter } = unlock(\n\tblockEditorPrivateApis\n);\n\n/**\n * Given the Link block's type attribute, return the query params to give to\n * /wp/v2/search.\n *\n * @param {string} type Link block's type attribute.\n * @param {string} kind Link block's entity of kind (post-type|taxonomy)\n * @return {{ type?: string, subtype?: string }} Search query params.\n */\nexport function getSuggestionsQuery( type, kind ) {\n\tswitch ( type ) {\n\t\tcase 'post':\n\t\tcase 'page':\n\t\t\treturn { type: 'post', subtype: type };\n\t\tcase 'category':\n\t\t\treturn { type: 'term', subtype: 'category' };\n\t\tcase 'tag':\n\t\t\treturn { type: 'term', subtype: 'post_tag' };\n\t\tcase 'post_format':\n\t\t\treturn { type: 'post-format' };\n\t\tdefault:\n\t\t\tif ( kind === 'taxonomy' ) {\n\t\t\t\treturn { type: 'term', subtype: type };\n\t\t\t}\n\t\t\tif ( kind === 'post-type' ) {\n\t\t\t\treturn { type: 'post', subtype: type };\n\t\t\t}\n\t\t\treturn {\n\t\t\t\t// for custom link which has no type\n\t\t\t\t// always show pages as initial suggestions\n\t\t\t\tinitialSuggestionsSearchOptions: {\n\t\t\t\t\ttype: 'post',\n\t\t\t\t\tsubtype: 'page',\n\t\t\t\t\tperPage: 20,\n\t\t\t\t},\n\t\t\t};\n\t}\n}\n\nfunction LinkUIBlockInserter( { clientId, onBack, onSelectBlock } ) {\n\tconst { rootBlockClientId } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getBlockRootClientId } = select( blockEditorStore );\n\n\t\t\treturn {\n\t\t\t\trootBlockClientId: getBlockRootClientId( clientId ),\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\n\tconst focusOnMountRef = useFocusOnMount( 'firstElement' );\n\n\tconst dialogTitleId = useInstanceId(\n\t\tLinkControl,\n\t\t`link-ui-block-inserter__title`\n\t);\n\tconst dialogDescritionId = useInstanceId(\n\t\tLinkControl,\n\t\t`link-ui-block-inserter__description`\n\t);\n\n\tif ( ! clientId ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<div\n\t\t\tclassName=\"link-ui-block-inserter\"\n\t\t\trole=\"dialog\"\n\t\t\taria-labelledby={ dialogTitleId }\n\t\t\taria-describedby={ dialogDescritionId }\n\t\t\tref={ focusOnMountRef }\n\t\t>\n\t\t\t<VisuallyHidden>\n\t\t\t\t<h2 id={ dialogTitleId }>{ __( 'Add block' ) }</h2>\n\n\t\t\t\t<p id={ dialogDescritionId }>\n\t\t\t\t\t{ __( 'Choose a block to add to your Navigation.' ) }\n\t\t\t\t</p>\n\t\t\t</VisuallyHidden>\n\n\t\t\t<Button\n\t\t\t\tclassName=\"link-ui-block-inserter__back\"\n\t\t\t\ticon={ chevronLeftSmall }\n\t\t\t\tonClick={ ( e ) => {\n\t\t\t\t\te.preventDefault();\n\t\t\t\t\tonBack();\n\t\t\t\t} }\n\t\t\t\tsize=\"small\"\n\t\t\t>\n\t\t\t\t{ __( 'Back' ) }\n\t\t\t</Button>\n\n\t\t\t<QuickInserter\n\t\t\t\trootClientId={ rootBlockClientId }\n\t\t\t\tclientId={ clientId }\n\t\t\t\tisAppender={ false }\n\t\t\t\tprioritizePatterns={ false }\n\t\t\t\tselectBlockOnInsert\n\t\t\t\thasSearch={ false }\n\t\t\t\tonSelect={ onSelectBlock }\n\t\t\t/>\n\t\t</div>\n\t);\n}\n\nexport function LinkUI( props ) {\n\tconst [ addingBlock, setAddingBlock ] = useState( false );\n\tconst [ focusAddBlockButton, setFocusAddBlockButton ] = useState( false );\n\tconst [ showBackdrop, setShowBackdrop ] = useState( true );\n\tconst { saveEntityRecord } = useDispatch( coreStore );\n\tconst pagesPermissions = useResourcePermissions( 'pages' );\n\tconst postsPermissions = useResourcePermissions( 'posts' );\n\n\tasync function handleCreate( pageTitle ) {\n\t\tconst postType = props.link.type || 'page';\n\n\t\tconst page = await saveEntityRecord( 'postType', postType, {\n\t\t\ttitle: pageTitle,\n\t\t\tstatus: 'draft',\n\t\t} );\n\n\t\treturn {\n\t\t\tid: page.id,\n\t\t\ttype: postType,\n\t\t\t// Make `title` property consistent with that in `fetchLinkSuggestions` where the `rendered` title (containing HTML entities)\n\t\t\t// is also being decoded. By being consistent in both locations we avoid having to branch in the rendering output code.\n\t\t\t// Ideally in the future we will update both APIs to utilise the \"raw\" form of the title which is better suited to edit contexts.\n\t\t\t// e.g.\n\t\t\t// - title.raw = \"Yes & No\"\n\t\t\t// - title.rendered = \"Yes & No\"\n\t\t\t// - decodeEntities( title.rendered ) = \"Yes & No\"\n\t\t\t// See:\n\t\t\t// - https://github.com/WordPress/gutenberg/pull/41063\n\t\t\t// - https://github.com/WordPress/gutenberg/blob/a1e1fdc0e6278457e9f4fc0b31ac6d2095f5450b/packages/core-data/src/fetch/__experimental-fetch-link-suggestions.js#L212-L218\n\t\t\ttitle: decodeEntities( page.title.rendered ),\n\t\t\turl: page.link,\n\t\t\tkind: 'post-type',\n\t\t};\n\t}\n\n\tconst { label, url, opensInNewTab, type, kind } = props.link;\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\t// Memoize link value to avoid overriding the LinkControl's internal state.\n\t// This is a temporary fix. See https://github.com/WordPress/gutenberg/issues/50976#issuecomment-1568226407.\n\tconst link = useMemo(\n\t\t() => ( {\n\t\t\turl,\n\t\t\topensInNewTab,\n\t\t\ttitle: label && stripHTML( label ),\n\t\t} ),\n\t\t[ label, opensInNewTab, url ]\n\t);\n\n\tconst dialogTitleId = useInstanceId(\n\t\tLinkUI,\n\t\t`link-ui-link-control__title`\n\t);\n\tconst dialogDescritionId = useInstanceId(\n\t\tLinkUI,\n\t\t`link-ui-link-control__description`\n\t);\n\n\t// Selecting a block should close the popover and also remove the (previously) automatically inserted\n\t// link block so that the newly selected block can be inserted in its place.\n\tconst { onClose: onSelectBlock } = props;\n\n\treturn (\n\t\t<>\n\t\t\t{ showBackdrop && (\n\t\t\t\t<div\n\t\t\t\t\tclassName=\"components-popover-pointer-events-trap\"\n\t\t\t\t\taria-hidden=\"true\"\n\t\t\t\t\tonClick={ () => setShowBackdrop( false ) }\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t<Popover\n\t\t\t\tplacement=\"bottom\"\n\t\t\t\tonClose={ props.onClose }\n\t\t\t\tanchor={ props.anchor }\n\t\t\t\tshift\n\t\t\t>\n\t\t\t\t{ ! addingBlock && (\n\t\t\t\t\t<div\n\t\t\t\t\t\trole=\"dialog\"\n\t\t\t\t\t\taria-labelledby={ dialogTitleId }\n\t\t\t\t\t\taria-describedby={ dialogDescritionId }\n\t\t\t\t\t>\n\t\t\t\t\t\t<VisuallyHidden>\n\t\t\t\t\t\t\t<h2 id={ dialogTitleId }>{ __( 'Add link' ) }</h2>\n\n\t\t\t\t\t\t\t<p id={ dialogDescritionId }>\n\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t'Search for and add a link to your Navigation.'\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t</p>\n\t\t\t\t\t\t</VisuallyHidden>\n\t\t\t\t\t\t<LinkControl\n\t\t\t\t\t\t\thasTextControl\n\t\t\t\t\t\t\thasRichPreviews\n\t\t\t\t\t\t\tvalue={ link }\n\t\t\t\t\t\t\tshowInitialSuggestions\n\t\t\t\t\t\t\twithCreateSuggestion={ userCanCreate }\n\t\t\t\t\t\t\tcreateSuggestion={ handleCreate }\n\t\t\t\t\t\t\tcreateSuggestionButtonText={ ( searchTerm ) => {\n\t\t\t\t\t\t\t\tlet format;\n\n\t\t\t\t\t\t\t\tif ( type === 'post' ) {\n\t\t\t\t\t\t\t\t\t/* translators: %s: search term. */\n\t\t\t\t\t\t\t\t\tformat = __(\n\t\t\t\t\t\t\t\t\t\t'Create draft post: <mark>%s</mark>'\n\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t/* translators: %s: search term. */\n\t\t\t\t\t\t\t\t\tformat = __(\n\t\t\t\t\t\t\t\t\t\t'Create draft page: <mark>%s</mark>'\n\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\treturn createInterpolateElement(\n\t\t\t\t\t\t\t\t\tsprintf( format, searchTerm ),\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tmark: <mark />,\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tnoDirectEntry={ !! type }\n\t\t\t\t\t\t\tnoURLSuggestion={ !! type }\n\t\t\t\t\t\t\tsuggestionsQuery={ getSuggestionsQuery(\n\t\t\t\t\t\t\t\ttype,\n\t\t\t\t\t\t\t\tkind\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\tonChange={ props.onChange }\n\t\t\t\t\t\t\tonRemove={ props.onRemove }\n\t\t\t\t\t\t\tonCancel={ props.onCancel }\n\t\t\t\t\t\t\trenderControlBottom={ () =>\n\t\t\t\t\t\t\t\t! link?.url?.length && (\n\t\t\t\t\t\t\t\t\t<LinkUITools\n\t\t\t\t\t\t\t\t\t\tfocusAddBlockButton={\n\t\t\t\t\t\t\t\t\t\t\tfocusAddBlockButton\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tsetAddingBlock={ () => {\n\t\t\t\t\t\t\t\t\t\t\tsetAddingBlock( true );\n\t\t\t\t\t\t\t\t\t\t\tsetFocusAddBlockButton( false );\n\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</div>\n\t\t\t\t) }\n\n\t\t\t\t{ addingBlock && (\n\t\t\t\t\t<LinkUIBlockInserter\n\t\t\t\t\t\tclientId={ props.clientId }\n\t\t\t\t\t\tonBack={ () => {\n\t\t\t\t\t\t\tsetAddingBlock( false );\n\t\t\t\t\t\t\tsetFocusAddBlockButton( true );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tonSelectBlock={ onSelectBlock }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</Popover>\n\t\t</>\n\t);\n}\n\nconst LinkUITools = ( { setAddingBlock, focusAddBlockButton } ) => {\n\tconst blockInserterAriaRole = 'listbox';\n\tconst addBlockButtonRef = useRef();\n\n\t// Focus the add block button when the popover is opened.\n\tuseEffect( () => {\n\t\tif ( focusAddBlockButton ) {\n\t\t\taddBlockButtonRef.current?.focus();\n\t\t}\n\t}, [ focusAddBlockButton ] );\n\n\treturn (\n\t\t<VStack className=\"link-ui-tools\">\n\t\t\t<Button\n\t\t\t\tref={ addBlockButtonRef }\n\t\t\t\ticon={ plus }\n\t\t\t\tonClick={ ( e ) => {\n\t\t\t\t\te.preventDefault();\n\t\t\t\t\tsetAddingBlock( true );\n\t\t\t\t} }\n\t\t\t\taria-haspopup={ blockInserterAriaRole }\n\t\t\t>\n\t\t\t\t{ __( 'Add block' ) }\n\t\t\t</Button>\n\t\t</VStack>\n\t);\n};\n\nexport default LinkUITools;\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_dom","require","_components","_i18n","_blockEditor","_element","_coreData","_htmlEntities","_data","_icons","_compose","_lockUnlock","PrivateQuickInserter","QuickInserter","unlock","blockEditorPrivateApis","getSuggestionsQuery","type","kind","subtype","initialSuggestionsSearchOptions","perPage","LinkUIBlockInserter","clientId","onBack","onSelectBlock","rootBlockClientId","useSelect","select","getBlockRootClientId","blockEditorStore","focusOnMountRef","useFocusOnMount","dialogTitleId","useInstanceId","LinkControl","dialogDescritionId","_react","createElement","className","role","ref","VisuallyHidden","id","__","Button","icon","chevronLeftSmall","onClick","e","preventDefault","size","rootClientId","isAppender","prioritizePatterns","selectBlockOnInsert","hasSearch","onSelect","LinkUI","props","addingBlock","setAddingBlock","useState","focusAddBlockButton","setFocusAddBlockButton","saveEntityRecord","useDispatch","coreStore","pagesPermissions","useResourcePermissions","postsPermissions","handleCreate","pageTitle","postType","link","page","title","status","decodeEntities","rendered","url","label","opensInNewTab","userCanCreate","canCreate","useMemo","stripHTML","onClose","Popover","placement","anchor","shift","__experimentalLinkControl","hasTextControl","hasRichPreviews","value","showInitialSuggestions","withCreateSuggestion","createSuggestion","createSuggestionButtonText","searchTerm","format","createInterpolateElement","sprintf","mark","noDirectEntry","noURLSuggestion","suggestionsQuery","onChange","onRemove","onCancel","renderControlBottom","length","LinkUITools","blockInserterAriaRole","addBlockButtonRef","useRef","useEffect","current","focus","__experimentalVStack","plus","_default","exports","default"],"sources":["@wordpress/block-library/src/navigation-link/link-ui.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __unstableStripHTML as stripHTML } from '@wordpress/dom';\nimport {\n\tPopover,\n\tButton,\n\tVisuallyHidden,\n\t__experimentalVStack as VStack,\n} from '@wordpress/components';\nimport { __, sprintf } from '@wordpress/i18n';\nimport {\n\t__experimentalLinkControl as LinkControl,\n\tstore as blockEditorStore,\n\tprivateApis as blockEditorPrivateApis,\n} from '@wordpress/block-editor';\nimport {\n\tcreateInterpolateElement,\n\tuseMemo,\n\tuseState,\n\tuseRef,\n\tuseEffect,\n} from '@wordpress/element';\nimport {\n\tstore as coreStore,\n\tuseResourcePermissions,\n} from '@wordpress/core-data';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { chevronLeftSmall, plus } from '@wordpress/icons';\nimport { useInstanceId, useFocusOnMount } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../lock-unlock';\n\nconst { PrivateQuickInserter: QuickInserter } = unlock(\n\tblockEditorPrivateApis\n);\n\n/**\n * Given the Link block's type attribute, return the query params to give to\n * /wp/v2/search.\n *\n * @param {string} type Link block's type attribute.\n * @param {string} kind Link block's entity of kind (post-type|taxonomy)\n * @return {{ type?: string, subtype?: string }} Search query params.\n */\nexport function getSuggestionsQuery( type, kind ) {\n\tswitch ( type ) {\n\t\tcase 'post':\n\t\tcase 'page':\n\t\t\treturn { type: 'post', subtype: type };\n\t\tcase 'category':\n\t\t\treturn { type: 'term', subtype: 'category' };\n\t\tcase 'tag':\n\t\t\treturn { type: 'term', subtype: 'post_tag' };\n\t\tcase 'post_format':\n\t\t\treturn { type: 'post-format' };\n\t\tdefault:\n\t\t\tif ( kind === 'taxonomy' ) {\n\t\t\t\treturn { type: 'term', subtype: type };\n\t\t\t}\n\t\t\tif ( kind === 'post-type' ) {\n\t\t\t\treturn { type: 'post', subtype: type };\n\t\t\t}\n\t\t\treturn {\n\t\t\t\t// for custom link which has no type\n\t\t\t\t// always show pages as initial suggestions\n\t\t\t\tinitialSuggestionsSearchOptions: {\n\t\t\t\t\ttype: 'post',\n\t\t\t\t\tsubtype: 'page',\n\t\t\t\t\tperPage: 20,\n\t\t\t\t},\n\t\t\t};\n\t}\n}\n\nfunction LinkUIBlockInserter( { clientId, onBack, onSelectBlock } ) {\n\tconst { rootBlockClientId } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getBlockRootClientId } = select( blockEditorStore );\n\n\t\t\treturn {\n\t\t\t\trootBlockClientId: getBlockRootClientId( clientId ),\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\n\tconst focusOnMountRef = useFocusOnMount( 'firstElement' );\n\n\tconst dialogTitleId = useInstanceId(\n\t\tLinkControl,\n\t\t`link-ui-block-inserter__title`\n\t);\n\tconst dialogDescritionId = useInstanceId(\n\t\tLinkControl,\n\t\t`link-ui-block-inserter__description`\n\t);\n\n\tif ( ! clientId ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<div\n\t\t\tclassName=\"link-ui-block-inserter\"\n\t\t\trole=\"dialog\"\n\t\t\taria-labelledby={ dialogTitleId }\n\t\t\taria-describedby={ dialogDescritionId }\n\t\t\tref={ focusOnMountRef }\n\t\t>\n\t\t\t<VisuallyHidden>\n\t\t\t\t<h2 id={ dialogTitleId }>{ __( 'Add block' ) }</h2>\n\n\t\t\t\t<p id={ dialogDescritionId }>\n\t\t\t\t\t{ __( 'Choose a block to add to your Navigation.' ) }\n\t\t\t\t</p>\n\t\t\t</VisuallyHidden>\n\n\t\t\t<Button\n\t\t\t\tclassName=\"link-ui-block-inserter__back\"\n\t\t\t\ticon={ chevronLeftSmall }\n\t\t\t\tonClick={ ( e ) => {\n\t\t\t\t\te.preventDefault();\n\t\t\t\t\tonBack();\n\t\t\t\t} }\n\t\t\t\tsize=\"small\"\n\t\t\t>\n\t\t\t\t{ __( 'Back' ) }\n\t\t\t</Button>\n\n\t\t\t<QuickInserter\n\t\t\t\trootClientId={ rootBlockClientId }\n\t\t\t\tclientId={ clientId }\n\t\t\t\tisAppender={ false }\n\t\t\t\tprioritizePatterns={ false }\n\t\t\t\tselectBlockOnInsert\n\t\t\t\thasSearch={ false }\n\t\t\t\tonSelect={ onSelectBlock }\n\t\t\t/>\n\t\t</div>\n\t);\n}\n\nexport function LinkUI( props ) {\n\tconst [ addingBlock, setAddingBlock ] = useState( false );\n\tconst [ focusAddBlockButton, setFocusAddBlockButton ] = useState( false );\n\tconst { saveEntityRecord } = useDispatch( coreStore );\n\tconst pagesPermissions = useResourcePermissions( 'pages' );\n\tconst postsPermissions = useResourcePermissions( 'posts' );\n\n\tasync function handleCreate( pageTitle ) {\n\t\tconst postType = props.link.type || 'page';\n\n\t\tconst page = await saveEntityRecord( 'postType', postType, {\n\t\t\ttitle: pageTitle,\n\t\t\tstatus: 'draft',\n\t\t} );\n\n\t\treturn {\n\t\t\tid: page.id,\n\t\t\ttype: postType,\n\t\t\t// Make `title` property consistent with that in `fetchLinkSuggestions` where the `rendered` title (containing HTML entities)\n\t\t\t// is also being decoded. By being consistent in both locations we avoid having to branch in the rendering output code.\n\t\t\t// Ideally in the future we will update both APIs to utilise the \"raw\" form of the title which is better suited to edit contexts.\n\t\t\t// e.g.\n\t\t\t// - title.raw = \"Yes & No\"\n\t\t\t// - title.rendered = \"Yes & No\"\n\t\t\t// - decodeEntities( title.rendered ) = \"Yes & No\"\n\t\t\t// See:\n\t\t\t// - https://github.com/WordPress/gutenberg/pull/41063\n\t\t\t// - https://github.com/WordPress/gutenberg/blob/a1e1fdc0e6278457e9f4fc0b31ac6d2095f5450b/packages/core-data/src/fetch/__experimental-fetch-link-suggestions.js#L212-L218\n\t\t\ttitle: decodeEntities( page.title.rendered ),\n\t\t\turl: page.link,\n\t\t\tkind: 'post-type',\n\t\t};\n\t}\n\n\tconst { label, url, opensInNewTab, type, kind } = props.link;\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\t// Memoize link value to avoid overriding the LinkControl's internal state.\n\t// This is a temporary fix. See https://github.com/WordPress/gutenberg/issues/50976#issuecomment-1568226407.\n\tconst link = useMemo(\n\t\t() => ( {\n\t\t\turl,\n\t\t\topensInNewTab,\n\t\t\ttitle: label && stripHTML( label ),\n\t\t} ),\n\t\t[ label, opensInNewTab, url ]\n\t);\n\n\tconst dialogTitleId = useInstanceId(\n\t\tLinkUI,\n\t\t`link-ui-link-control__title`\n\t);\n\tconst dialogDescritionId = useInstanceId(\n\t\tLinkUI,\n\t\t`link-ui-link-control__description`\n\t);\n\n\t// Selecting a block should close the popover and also remove the (previously) automatically inserted\n\t// link block so that the newly selected block can be inserted in its place.\n\tconst { onClose: onSelectBlock } = props;\n\n\treturn (\n\t\t<Popover\n\t\t\tplacement=\"bottom\"\n\t\t\tonClose={ props.onClose }\n\t\t\tanchor={ props.anchor }\n\t\t\tshift\n\t\t>\n\t\t\t{ ! addingBlock && (\n\t\t\t\t<div\n\t\t\t\t\trole=\"dialog\"\n\t\t\t\t\taria-labelledby={ dialogTitleId }\n\t\t\t\t\taria-describedby={ dialogDescritionId }\n\t\t\t\t>\n\t\t\t\t\t<VisuallyHidden>\n\t\t\t\t\t\t<h2 id={ dialogTitleId }>{ __( 'Add link' ) }</h2>\n\n\t\t\t\t\t\t<p id={ dialogDescritionId }>\n\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t'Search for and add a link to your Navigation.'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</p>\n\t\t\t\t\t</VisuallyHidden>\n\t\t\t\t\t<LinkControl\n\t\t\t\t\t\thasTextControl\n\t\t\t\t\t\thasRichPreviews\n\t\t\t\t\t\tvalue={ link }\n\t\t\t\t\t\tshowInitialSuggestions\n\t\t\t\t\t\twithCreateSuggestion={ userCanCreate }\n\t\t\t\t\t\tcreateSuggestion={ handleCreate }\n\t\t\t\t\t\tcreateSuggestionButtonText={ ( searchTerm ) => {\n\t\t\t\t\t\t\tlet format;\n\n\t\t\t\t\t\t\tif ( type === 'post' ) {\n\t\t\t\t\t\t\t\t/* translators: %s: search term. */\n\t\t\t\t\t\t\t\tformat = __(\n\t\t\t\t\t\t\t\t\t'Create draft post: <mark>%s</mark>'\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t/* translators: %s: search term. */\n\t\t\t\t\t\t\t\tformat = __(\n\t\t\t\t\t\t\t\t\t'Create draft page: <mark>%s</mark>'\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\treturn createInterpolateElement(\n\t\t\t\t\t\t\t\tsprintf( format, searchTerm ),\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tmark: <mark />,\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\tnoDirectEntry={ !! type }\n\t\t\t\t\t\tnoURLSuggestion={ !! type }\n\t\t\t\t\t\tsuggestionsQuery={ getSuggestionsQuery( type, kind ) }\n\t\t\t\t\t\tonChange={ props.onChange }\n\t\t\t\t\t\tonRemove={ props.onRemove }\n\t\t\t\t\t\tonCancel={ props.onCancel }\n\t\t\t\t\t\trenderControlBottom={ () =>\n\t\t\t\t\t\t\t! link?.url?.length && (\n\t\t\t\t\t\t\t\t<LinkUITools\n\t\t\t\t\t\t\t\t\tfocusAddBlockButton={ focusAddBlockButton }\n\t\t\t\t\t\t\t\t\tsetAddingBlock={ () => {\n\t\t\t\t\t\t\t\t\t\tsetAddingBlock( true );\n\t\t\t\t\t\t\t\t\t\tsetFocusAddBlockButton( false );\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t) }\n\n\t\t\t{ addingBlock && (\n\t\t\t\t<LinkUIBlockInserter\n\t\t\t\t\tclientId={ props.clientId }\n\t\t\t\t\tonBack={ () => {\n\t\t\t\t\t\tsetAddingBlock( false );\n\t\t\t\t\t\tsetFocusAddBlockButton( true );\n\t\t\t\t\t} }\n\t\t\t\t\tonSelectBlock={ onSelectBlock }\n\t\t\t\t/>\n\t\t\t) }\n\t\t</Popover>\n\t);\n}\n\nconst LinkUITools = ( { setAddingBlock, focusAddBlockButton } ) => {\n\tconst blockInserterAriaRole = 'listbox';\n\tconst addBlockButtonRef = useRef();\n\n\t// Focus the add block button when the popover is opened.\n\tuseEffect( () => {\n\t\tif ( focusAddBlockButton ) {\n\t\t\taddBlockButtonRef.current?.focus();\n\t\t}\n\t}, [ focusAddBlockButton ] );\n\n\treturn (\n\t\t<VStack className=\"link-ui-tools\">\n\t\t\t<Button\n\t\t\t\tref={ addBlockButtonRef }\n\t\t\t\ticon={ plus }\n\t\t\t\tonClick={ ( e ) => {\n\t\t\t\t\te.preventDefault();\n\t\t\t\t\tsetAddingBlock( true );\n\t\t\t\t} }\n\t\t\t\taria-haspopup={ blockInserterAriaRole }\n\t\t\t>\n\t\t\t\t{ __( 'Add block' ) }\n\t\t\t</Button>\n\t\t</VStack>\n\t);\n};\n\nexport default LinkUITools;\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":[]}
|
|
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
});
|
|
7
7
|
exports.default = void 0;
|
|
8
8
|
var _react = require("react");
|
|
9
|
-
var
|
|
9
|
+
var _clsx = _interopRequireDefault(require("clsx"));
|
|
10
10
|
var _element = require("@wordpress/element");
|
|
11
11
|
var _blockEditor = require("@wordpress/block-editor");
|
|
12
12
|
var _i18n = require("@wordpress/i18n");
|
|
@@ -114,7 +114,7 @@ const deprecated = [
|
|
|
114
114
|
dropCap,
|
|
115
115
|
direction
|
|
116
116
|
} = attributes;
|
|
117
|
-
const className = (0,
|
|
117
|
+
const className = (0, _clsx.default)({
|
|
118
118
|
'has-drop-cap': align === ((0, _i18n.isRTL)() ? 'left' : 'right') || align === 'center' ? false : dropCap,
|
|
119
119
|
[`has-text-align-${align}`]: align
|
|
120
120
|
});
|
|
@@ -160,7 +160,7 @@ const deprecated = [
|
|
|
160
160
|
const textClass = (0, _blockEditor.getColorClassName)('color', textColor);
|
|
161
161
|
const backgroundClass = (0, _blockEditor.getColorClassName)('background-color', backgroundColor);
|
|
162
162
|
const fontSizeClass = (0, _blockEditor.getFontSizeClass)(fontSize);
|
|
163
|
-
const className = (0,
|
|
163
|
+
const className = (0, _clsx.default)({
|
|
164
164
|
'has-text-color': textColor || customTextColor,
|
|
165
165
|
'has-background': backgroundColor || customBackgroundColor,
|
|
166
166
|
'has-drop-cap': dropCap,
|
|
@@ -215,7 +215,7 @@ const deprecated = [
|
|
|
215
215
|
const textClass = (0, _blockEditor.getColorClassName)('color', textColor);
|
|
216
216
|
const backgroundClass = (0, _blockEditor.getColorClassName)('background-color', backgroundColor);
|
|
217
217
|
const fontSizeClass = (0, _blockEditor.getFontSizeClass)(fontSize);
|
|
218
|
-
const className = (0,
|
|
218
|
+
const className = (0, _clsx.default)({
|
|
219
219
|
'has-text-color': textColor || customTextColor,
|
|
220
220
|
'has-background': backgroundColor || customBackgroundColor,
|
|
221
221
|
'has-drop-cap': dropCap,
|
|
@@ -273,7 +273,7 @@ const deprecated = [
|
|
|
273
273
|
const textClass = (0, _blockEditor.getColorClassName)('color', textColor);
|
|
274
274
|
const backgroundClass = (0, _blockEditor.getColorClassName)('background-color', backgroundColor);
|
|
275
275
|
const fontSizeClass = fontSize && `is-${fontSize}-text`;
|
|
276
|
-
const className = (0,
|
|
276
|
+
const className = (0, _clsx.default)({
|
|
277
277
|
[`align${width}`]: width,
|
|
278
278
|
'has-background': backgroundColor || customBackgroundColor,
|
|
279
279
|
'has-drop-cap': dropCap,
|
|
@@ -314,7 +314,7 @@ const deprecated = [
|
|
|
314
314
|
textColor,
|
|
315
315
|
fontSize
|
|
316
316
|
} = attributes;
|
|
317
|
-
const className = (0,
|
|
317
|
+
const className = (0, _clsx.default)({
|
|
318
318
|
[`align${width}`]: width,
|
|
319
319
|
'has-background': backgroundColor,
|
|
320
320
|
'has-drop-cap': dropCap
|