@wordpress/block-library 8.4.0 → 8.6.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 +4 -0
- package/build/archives/edit.js +3 -0
- package/build/archives/edit.js.map +1 -1
- package/build/audio/edit.js +2 -0
- package/build/audio/edit.js.map +1 -1
- package/build/avatar/edit.js +5 -9
- package/build/avatar/edit.js.map +1 -1
- package/build/buttons/edit.native.js +1 -1
- package/build/buttons/edit.native.js.map +1 -1
- package/build/categories/edit.js +5 -0
- package/build/categories/edit.js.map +1 -1
- package/build/columns/edit.js +11 -8
- package/build/columns/edit.js.map +1 -1
- package/build/columns/edit.native.js +1 -1
- package/build/columns/edit.native.js.map +1 -1
- package/build/columns/utils.js +2 -2
- package/build/columns/utils.js.map +1 -1
- package/build/comment-author-name/edit.js +2 -0
- package/build/comment-author-name/edit.js.map +1 -1
- package/build/comment-date/edit.js +1 -0
- package/build/comment-date/edit.js.map +1 -1
- package/build/comment-edit-link/edit.js +1 -0
- package/build/comment-edit-link/edit.js.map +1 -1
- package/build/comments/edit/placeholder.js +8 -5
- package/build/comments/edit/placeholder.js.map +1 -1
- package/build/comments-title/edit.js +2 -0
- package/build/comments-title/edit.js.map +1 -1
- package/build/cover/edit/inspector-controls.js +2 -0
- package/build/cover/edit/inspector-controls.js.map +1 -1
- package/build/cover/index.js +13 -4
- package/build/cover/index.js.map +1 -1
- package/build/cover/variations.js +29 -0
- package/build/cover/variations.js.map +1 -0
- package/build/embed/edit.js +13 -14
- package/build/embed/edit.js.map +1 -1
- package/build/embed/edit.native.js +18 -14
- package/build/embed/edit.native.js.map +1 -1
- package/build/embed/embed-controls.js +1 -0
- package/build/embed/embed-controls.js.map +1 -1
- package/build/embed/util.js +39 -12
- package/build/embed/util.js.map +1 -1
- package/build/file/inspector.js +3 -0
- package/build/file/inspector.js.map +1 -1
- package/build/freeform/modal.js +1 -1
- package/build/freeform/modal.js.map +1 -1
- package/build/gallery/edit.js +3 -0
- package/build/gallery/edit.js.map +1 -1
- package/build/gallery/shared.js +4 -8
- package/build/gallery/shared.js.map +1 -1
- package/build/gallery/use-image-sizes.js +4 -8
- package/build/gallery/use-image-sizes.js.map +1 -1
- package/build/gallery/v1/edit.js +8 -3
- package/build/gallery/v1/edit.js.map +1 -1
- package/build/gallery/v1/gallery-image.js +1 -3
- package/build/gallery/v1/gallery-image.js.map +1 -1
- package/build/gallery/v1/shared.js +4 -7
- package/build/gallery/v1/shared.js.map +1 -1
- package/build/image/edit.js +6 -4
- package/build/image/edit.js.map +1 -1
- package/build/image/image.js +6 -2
- package/build/image/image.js.map +1 -1
- package/build/image/utils.js +3 -1
- package/build/image/utils.js.map +1 -1
- package/build/index.js +3 -1
- package/build/index.js.map +1 -1
- package/build/latest-comments/edit.js +3 -0
- package/build/latest-comments/edit.js.map +1 -1
- package/build/latest-posts/edit.js +14 -10
- package/build/latest-posts/edit.js.map +1 -1
- package/build/latest-posts/edit.native.js +3 -3
- package/build/latest-posts/edit.native.js.map +1 -1
- package/build/list/ordered-list-settings.js +1 -0
- package/build/list/ordered-list-settings.js.map +1 -1
- package/build/list-item/edit.js +2 -2
- package/build/list-item/edit.js.map +1 -1
- package/build/list-item/hooks/use-outdent-list-item.js +2 -1
- package/build/list-item/hooks/use-outdent-list-item.js.map +1 -1
- package/build/loginout/edit.js +2 -0
- package/build/loginout/edit.js.map +1 -1
- package/build/media-text/constants.js +17 -1
- package/build/media-text/constants.js.map +1 -1
- package/build/media-text/edit.js +9 -19
- package/build/media-text/edit.js.map +1 -1
- package/build/media-text/edit.native.js +6 -5
- package/build/media-text/edit.native.js.map +1 -1
- package/build/media-text/transforms.js +32 -44
- package/build/media-text/transforms.js.map +1 -1
- package/build/more/edit.js +1 -0
- package/build/more/edit.js.map +1 -1
- package/build/navigation/edit/index.js +64 -68
- package/build/navigation/edit/index.js.map +1 -1
- package/build/navigation/edit/inner-blocks.js +4 -1
- package/build/navigation/edit/inner-blocks.js.map +1 -1
- package/build/navigation/edit/menu-inspector-controls.js +2 -5
- package/build/navigation/edit/menu-inspector-controls.js.map +1 -1
- package/build/navigation/edit/navigation-menu-selector.js +26 -22
- package/build/navigation/edit/navigation-menu-selector.js.map +1 -1
- package/build/navigation/edit/overlay-menu-preview.js +1 -0
- package/build/navigation/edit/overlay-menu-preview.js.map +1 -1
- package/build/navigation/edit/placeholder/index.js +1 -1
- package/build/navigation/edit/placeholder/index.js.map +1 -1
- package/build/navigation/edit/unsaved-inner-blocks.js +14 -1
- package/build/navigation/edit/unsaved-inner-blocks.js.map +1 -1
- package/build/navigation/edit/use-convert-classic-menu-to-block-menu.js +3 -5
- package/build/navigation/edit/use-convert-classic-menu-to-block-menu.js.map +1 -1
- package/build/navigation/edit/use-create-navigation-menu.js +1 -1
- package/build/navigation/edit/use-create-navigation-menu.js.map +1 -1
- package/build/navigation/edit/use-generate-default-navigation-title.js +1 -1
- package/build/navigation/edit/use-generate-default-navigation-title.js.map +1 -1
- package/build/navigation/edit/use-navigation-notice.js +4 -7
- package/build/navigation/edit/use-navigation-notice.js.map +1 -1
- package/build/navigation-link/edit.js +0 -11
- package/build/navigation-link/edit.js.map +1 -1
- package/build/navigation-submenu/edit.js +1 -13
- package/build/navigation-submenu/edit.js.map +1 -1
- package/build/page-list/convert-to-links-modal.js +47 -0
- package/build/page-list/convert-to-links-modal.js.map +1 -0
- package/build/page-list/edit.js +62 -62
- package/build/page-list/edit.js.map +1 -1
- package/build/page-list-item/edit.js +3 -2
- package/build/page-list-item/edit.js.map +1 -1
- package/build/paragraph/edit.js +1 -0
- package/build/paragraph/edit.js.map +1 -1
- package/build/post-author/edit.js +4 -0
- package/build/post-author/edit.js.map +1 -1
- package/build/post-author-name/edit.js +2 -0
- package/build/post-author-name/edit.js.map +1 -1
- package/build/post-content/edit.js +6 -1
- package/build/post-content/edit.js.map +1 -1
- package/build/post-date/edit.js +2 -0
- package/build/post-date/edit.js.map +1 -1
- package/build/post-excerpt/edit.js +1 -0
- package/build/post-excerpt/edit.js.map +1 -1
- package/build/post-featured-image/dimension-controls.js +0 -6
- package/build/post-featured-image/dimension-controls.js.map +1 -1
- package/build/post-featured-image/edit.js +3 -1
- package/build/post-featured-image/edit.js.map +1 -1
- package/build/post-navigation-link/edit.js +2 -0
- package/build/post-navigation-link/edit.js.map +1 -1
- package/build/post-terms/use-post-terms.js +1 -1
- package/build/post-terms/use-post-terms.js.map +1 -1
- package/build/post-time-to-read/edit.js +104 -0
- package/build/post-time-to-read/edit.js.map +1 -0
- package/build/post-time-to-read/icon.js +25 -0
- package/build/post-time-to-read/icon.js.map +1 -0
- package/build/post-time-to-read/index.js +57 -0
- package/build/post-time-to-read/index.js.map +1 -0
- package/build/post-title/edit.js +2 -0
- package/build/post-title/edit.js.map +1 -1
- package/build/pullquote/deprecated.js +3 -3
- package/build/pullquote/deprecated.js.map +1 -1
- package/build/query/edit/inspector-controls/index.js +1 -0
- package/build/query/edit/inspector-controls/index.js.map +1 -1
- package/build/query/edit/query-placeholder.js +3 -2
- package/build/query/edit/query-placeholder.js.map +1 -1
- package/build/query/utils.js +26 -9
- package/build/query/utils.js.map +1 -1
- package/build/query-title/edit.js +2 -0
- package/build/query-title/edit.js.map +1 -1
- package/build/read-more/edit.js +1 -0
- package/build/read-more/edit.js.map +1 -1
- package/build/rss/edit.js +3 -0
- package/build/rss/edit.js.map +1 -1
- package/build/site-logo/edit.js +3 -0
- package/build/site-logo/edit.js.map +1 -1
- package/build/site-tagline/index.js +1 -0
- package/build/site-tagline/index.js.map +1 -1
- package/build/site-title/edit/index.js +2 -0
- package/build/site-title/edit/index.js.map +1 -1
- package/build/social-links/edit.js +4 -1
- package/build/social-links/edit.js.map +1 -1
- package/build/spacer/controls.native.js +10 -8
- package/build/spacer/controls.native.js.map +1 -1
- package/build/spacer/edit.native.js +43 -5
- package/build/spacer/edit.native.js.map +1 -1
- package/build/spacer/save.native.js +30 -0
- package/build/spacer/save.native.js.map +1 -0
- package/build/table/edit.js +3 -0
- package/build/table/edit.js.map +1 -1
- package/build/table/state.js +12 -4
- package/build/table/state.js.map +1 -1
- package/build/table-of-contents/edit.js +1 -0
- package/build/table-of-contents/edit.js.map +1 -1
- package/build/tag-cloud/edit.js +1 -0
- package/build/tag-cloud/edit.js.map +1 -1
- package/build/template-part/edit/import-controls.js +33 -30
- package/build/template-part/edit/import-controls.js.map +1 -1
- package/build/template-part/edit/utils/transformers.js +69 -19
- package/build/template-part/edit/utils/transformers.js.map +1 -1
- package/build/text-columns/edit.js +3 -7
- package/build/text-columns/edit.js.map +1 -1
- package/build/text-columns/save.js +11 -13
- package/build/text-columns/save.js.map +1 -1
- package/build/video/edit-common-settings.js +5 -0
- package/build/video/edit-common-settings.js.map +1 -1
- package/build-module/archives/edit.js +3 -0
- package/build-module/archives/edit.js.map +1 -1
- package/build-module/audio/edit.js +2 -0
- package/build-module/audio/edit.js.map +1 -1
- package/build-module/avatar/edit.js +5 -8
- package/build-module/avatar/edit.js.map +1 -1
- package/build-module/buttons/edit.native.js +1 -1
- package/build-module/buttons/edit.native.js.map +1 -1
- package/build-module/categories/edit.js +5 -0
- package/build-module/categories/edit.js.map +1 -1
- package/build-module/columns/edit.js +11 -7
- package/build-module/columns/edit.js.map +1 -1
- package/build-module/columns/edit.native.js +1 -1
- package/build-module/columns/edit.native.js.map +1 -1
- package/build-module/columns/utils.js +3 -3
- package/build-module/columns/utils.js.map +1 -1
- package/build-module/comment-author-name/edit.js +2 -0
- package/build-module/comment-author-name/edit.js.map +1 -1
- package/build-module/comment-date/edit.js +1 -0
- package/build-module/comment-date/edit.js.map +1 -1
- package/build-module/comment-edit-link/edit.js +1 -0
- package/build-module/comment-edit-link/edit.js.map +1 -1
- package/build-module/comments/edit/placeholder.js +9 -5
- package/build-module/comments/edit/placeholder.js.map +1 -1
- package/build-module/comments-title/edit.js +2 -0
- package/build-module/comments-title/edit.js.map +1 -1
- package/build-module/cover/edit/inspector-controls.js +2 -0
- package/build-module/cover/edit/inspector-controls.js.map +1 -1
- package/build-module/cover/index.js +12 -4
- package/build-module/cover/index.js.map +1 -1
- package/build-module/cover/variations.js +19 -0
- package/build-module/cover/variations.js.map +1 -0
- package/build-module/embed/edit.js +14 -15
- package/build-module/embed/edit.js.map +1 -1
- package/build-module/embed/edit.native.js +19 -15
- package/build-module/embed/edit.native.js.map +1 -1
- package/build-module/embed/embed-controls.js +1 -0
- package/build-module/embed/embed-controls.js.map +1 -1
- package/build-module/embed/util.js +34 -10
- package/build-module/embed/util.js.map +1 -1
- package/build-module/file/inspector.js +3 -0
- package/build-module/file/inspector.js.map +1 -1
- package/build-module/freeform/modal.js +1 -1
- package/build-module/freeform/modal.js.map +1 -1
- package/build-module/gallery/edit.js +3 -0
- package/build-module/gallery/edit.js.map +1 -1
- package/build-module/gallery/shared.js +4 -7
- package/build-module/gallery/shared.js.map +1 -1
- package/build-module/gallery/use-image-sizes.js +4 -7
- package/build-module/gallery/use-image-sizes.js.map +1 -1
- package/build-module/gallery/v1/edit.js +9 -4
- package/build-module/gallery/v1/edit.js.map +1 -1
- package/build-module/gallery/v1/gallery-image.js +1 -2
- package/build-module/gallery/v1/gallery-image.js.map +1 -1
- package/build-module/gallery/v1/shared.js +4 -6
- package/build-module/gallery/v1/shared.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 +7 -3
- package/build-module/image/image.js.map +1 -1
- package/build-module/image/utils.js +4 -2
- package/build-module/image/utils.js.map +1 -1
- package/build-module/index.js +2 -1
- package/build-module/index.js.map +1 -1
- package/build-module/latest-comments/edit.js +3 -0
- package/build-module/latest-comments/edit.js.map +1 -1
- package/build-module/latest-posts/edit.js +14 -9
- package/build-module/latest-posts/edit.js.map +1 -1
- package/build-module/latest-posts/edit.native.js +3 -3
- package/build-module/latest-posts/edit.native.js.map +1 -1
- package/build-module/list/ordered-list-settings.js +1 -0
- package/build-module/list/ordered-list-settings.js.map +1 -1
- package/build-module/list-item/edit.js +2 -2
- package/build-module/list-item/edit.js.map +1 -1
- package/build-module/list-item/hooks/use-outdent-list-item.js +2 -1
- package/build-module/list-item/hooks/use-outdent-list-item.js.map +1 -1
- package/build-module/loginout/edit.js +2 -0
- package/build-module/loginout/edit.js.map +1 -1
- package/build-module/media-text/constants.js +10 -0
- package/build-module/media-text/constants.js.map +1 -1
- package/build-module/media-text/edit.js +4 -14
- package/build-module/media-text/edit.js.map +1 -1
- package/build-module/media-text/edit.native.js +4 -3
- package/build-module/media-text/edit.native.js.map +1 -1
- package/build-module/media-text/transforms.js +32 -44
- package/build-module/media-text/transforms.js.map +1 -1
- package/build-module/more/edit.js +1 -0
- package/build-module/more/edit.js.map +1 -1
- package/build-module/navigation/edit/index.js +65 -69
- package/build-module/navigation/edit/index.js.map +1 -1
- package/build-module/navigation/edit/inner-blocks.js +4 -1
- package/build-module/navigation/edit/inner-blocks.js.map +1 -1
- package/build-module/navigation/edit/menu-inspector-controls.js +2 -5
- package/build-module/navigation/edit/menu-inspector-controls.js.map +1 -1
- package/build-module/navigation/edit/navigation-menu-selector.js +25 -22
- package/build-module/navigation/edit/navigation-menu-selector.js.map +1 -1
- package/build-module/navigation/edit/overlay-menu-preview.js +1 -0
- package/build-module/navigation/edit/overlay-menu-preview.js.map +1 -1
- package/build-module/navigation/edit/placeholder/index.js +1 -1
- package/build-module/navigation/edit/placeholder/index.js.map +1 -1
- package/build-module/navigation/edit/unsaved-inner-blocks.js +14 -1
- package/build-module/navigation/edit/unsaved-inner-blocks.js.map +1 -1
- package/build-module/navigation/edit/use-convert-classic-menu-to-block-menu.js +3 -5
- package/build-module/navigation/edit/use-convert-classic-menu-to-block-menu.js.map +1 -1
- package/build-module/navigation/edit/use-create-navigation-menu.js +1 -1
- package/build-module/navigation/edit/use-create-navigation-menu.js.map +1 -1
- package/build-module/navigation/edit/use-generate-default-navigation-title.js +1 -1
- package/build-module/navigation/edit/use-generate-default-navigation-title.js.map +1 -1
- package/build-module/navigation/edit/use-navigation-notice.js +5 -8
- package/build-module/navigation/edit/use-navigation-notice.js.map +1 -1
- package/build-module/navigation-link/edit.js +0 -11
- package/build-module/navigation-link/edit.js.map +1 -1
- package/build-module/navigation-submenu/edit.js +1 -13
- package/build-module/navigation-submenu/edit.js.map +1 -1
- package/build-module/page-list/convert-to-links-modal.js +35 -0
- package/build-module/page-list/convert-to-links-modal.js.map +1 -0
- package/build-module/page-list/edit.js +64 -65
- package/build-module/page-list/edit.js.map +1 -1
- package/build-module/page-list-item/edit.js +3 -2
- package/build-module/page-list-item/edit.js.map +1 -1
- package/build-module/paragraph/edit.js +1 -0
- package/build-module/paragraph/edit.js.map +1 -1
- package/build-module/post-author/edit.js +4 -0
- package/build-module/post-author/edit.js.map +1 -1
- package/build-module/post-author-name/edit.js +2 -0
- package/build-module/post-author-name/edit.js.map +1 -1
- package/build-module/post-content/edit.js +6 -1
- package/build-module/post-content/edit.js.map +1 -1
- package/build-module/post-date/edit.js +2 -0
- package/build-module/post-date/edit.js.map +1 -1
- package/build-module/post-excerpt/edit.js +1 -0
- package/build-module/post-excerpt/edit.js.map +1 -1
- package/build-module/post-featured-image/dimension-controls.js +0 -6
- package/build-module/post-featured-image/dimension-controls.js.map +1 -1
- package/build-module/post-featured-image/edit.js +3 -1
- package/build-module/post-featured-image/edit.js.map +1 -1
- package/build-module/post-navigation-link/edit.js +2 -0
- package/build-module/post-navigation-link/edit.js.map +1 -1
- package/build-module/post-terms/use-post-terms.js +1 -1
- package/build-module/post-terms/use-post-terms.js.map +1 -1
- package/build-module/post-time-to-read/edit.js +90 -0
- package/build-module/post-time-to-read/edit.js.map +1 -0
- package/build-module/post-time-to-read/icon.js +15 -0
- package/build-module/post-time-to-read/icon.js.map +1 -0
- package/build-module/post-time-to-read/index.js +40 -0
- package/build-module/post-time-to-read/index.js.map +1 -0
- package/build-module/post-title/edit.js +2 -0
- package/build-module/post-title/edit.js.map +1 -1
- package/build-module/pullquote/deprecated.js +3 -2
- package/build-module/pullquote/deprecated.js.map +1 -1
- package/build-module/query/edit/inspector-controls/index.js +1 -0
- package/build-module/query/edit/inspector-controls/index.js.map +1 -1
- package/build-module/query/edit/query-placeholder.js +4 -3
- package/build-module/query/edit/query-placeholder.js.map +1 -1
- package/build-module/query/utils.js +21 -6
- package/build-module/query/utils.js.map +1 -1
- package/build-module/query-title/edit.js +2 -0
- package/build-module/query-title/edit.js.map +1 -1
- package/build-module/read-more/edit.js +1 -0
- package/build-module/read-more/edit.js.map +1 -1
- package/build-module/rss/edit.js +3 -0
- package/build-module/rss/edit.js.map +1 -1
- package/build-module/site-logo/edit.js +3 -0
- package/build-module/site-logo/edit.js.map +1 -1
- package/build-module/site-tagline/index.js +1 -0
- package/build-module/site-tagline/index.js.map +1 -1
- package/build-module/site-title/edit/index.js +2 -0
- package/build-module/site-title/edit/index.js.map +1 -1
- package/build-module/social-links/edit.js +4 -1
- package/build-module/social-links/edit.js.map +1 -1
- package/build-module/spacer/controls.native.js +9 -8
- package/build-module/spacer/controls.native.js.map +1 -1
- package/build-module/spacer/edit.native.js +39 -7
- package/build-module/spacer/edit.native.js.map +1 -1
- package/build-module/spacer/save.native.js +22 -0
- package/build-module/spacer/save.native.js.map +1 -0
- package/build-module/table/edit.js +3 -0
- package/build-module/table/edit.js.map +1 -1
- package/build-module/table/state.js +13 -5
- package/build-module/table/state.js.map +1 -1
- package/build-module/table-of-contents/edit.js +1 -0
- package/build-module/table-of-contents/edit.js.map +1 -1
- package/build-module/tag-cloud/edit.js +1 -0
- package/build-module/tag-cloud/edit.js.map +1 -1
- package/build-module/template-part/edit/import-controls.js +32 -29
- package/build-module/template-part/edit/import-controls.js.map +1 -1
- package/build-module/template-part/edit/utils/transformers.js +69 -20
- package/build-module/template-part/edit/utils/transformers.js.map +1 -1
- package/build-module/text-columns/edit.js +3 -6
- package/build-module/text-columns/edit.js.map +1 -1
- package/build-module/text-columns/save.js +11 -12
- package/build-module/text-columns/save.js.map +1 -1
- package/build-module/video/edit-common-settings.js +5 -0
- package/build-module/video/edit-common-settings.js.map +1 -1
- package/build-style/cover/style-rtl.css +11 -5
- package/build-style/cover/style.css +11 -5
- package/build-style/editor-rtl.css +9 -4
- package/build-style/editor.css +9 -4
- package/build-style/navigation/editor-rtl.css +1 -1
- package/build-style/navigation/editor.css +1 -1
- package/build-style/page-list/editor-rtl.css +4 -0
- package/build-style/page-list/editor.css +4 -0
- package/build-style/post-excerpt/editor-rtl.css +1 -1
- package/build-style/post-excerpt/editor.css +1 -1
- package/build-style/post-featured-image/style-rtl.css +1 -0
- package/build-style/post-featured-image/style.css +1 -0
- package/build-style/query/editor-rtl.css +1 -0
- package/build-style/query/editor.css +1 -0
- package/build-style/site-logo/editor-rtl.css +2 -2
- package/build-style/site-logo/editor.css +2 -2
- package/build-style/style-rtl.css +12 -5
- package/build-style/style.css +12 -5
- package/package.json +31 -30
- package/src/archives/edit.js +3 -0
- package/src/audio/edit.js +2 -0
- package/src/audio/test/__snapshots__/edit.native.js.snap +82 -42
- package/src/audio/test/__snapshots__/transforms.native.js.snap +25 -0
- package/src/audio/test/transforms.native.js +42 -0
- package/src/avatar/edit.js +2 -4
- package/src/block/test/__snapshots__/transforms.native.js.snap +15 -0
- package/src/block/test/transforms.native.js +40 -0
- package/src/buttons/edit.native.js +1 -1
- package/src/buttons/test/__snapshots__/edit.native.js.snap +11 -11
- package/src/buttons/test/__snapshots__/transforms.native.js.snap +31 -0
- package/src/buttons/test/transforms.native.js +48 -0
- package/src/categories/edit.js +5 -0
- package/src/code/test/__snapshots__/edit.native.js.snap +2 -2
- package/src/columns/edit.js +29 -17
- package/src/columns/edit.native.js +1 -1
- package/src/columns/test/__snapshots__/edit.native.js.snap +66 -66
- package/src/columns/test/__snapshots__/transforms.native.js.snap +61 -0
- package/src/columns/test/transforms.native.js +91 -0
- package/src/columns/test/utils.js +54 -0
- package/src/columns/utils.js +8 -8
- package/src/comment-author-name/edit.js +2 -0
- package/src/comment-date/edit.js +1 -0
- package/src/comment-edit-link/edit.js +1 -0
- package/src/comment-template/index.php +1 -2
- package/src/comments/edit/placeholder.js +16 -4
- package/src/comments-title/edit.js +2 -0
- package/src/cover/block.json +9 -3
- package/src/cover/edit/inspector-controls.js +2 -0
- package/src/cover/index.js +2 -0
- package/src/cover/index.php +4 -6
- package/src/cover/style.scss +16 -7
- package/src/cover/test/__snapshots__/edit.native.js.snap +36 -36
- package/src/cover/test/__snapshots__/transforms.native.js.snap +73 -0
- package/src/cover/test/transforms.native.js +112 -0
- package/src/cover/variations.js +20 -0
- package/src/embed/edit.js +16 -12
- package/src/embed/edit.native.js +28 -18
- package/src/embed/embed-controls.js +1 -0
- package/src/embed/test/__snapshots__/index.native.js.snap +52 -52
- package/src/embed/test/__snapshots__/transforms.native.js.snap +23 -0
- package/src/embed/test/index.js +12 -0
- package/src/embed/test/transforms.native.js +44 -0
- package/src/embed/util.js +29 -8
- package/src/file/inspector.js +3 -0
- package/src/file/test/__snapshots__/edit.native.js.snap +67 -51
- package/src/file/test/__snapshots__/transforms.native.js.snap +19 -0
- package/src/file/test/transforms.native.js +42 -0
- package/src/freeform/modal.js +1 -1
- package/src/freeform/test/__snapshots__/transforms.native.js.snap +19 -0
- package/src/freeform/test/transforms.native.js +39 -0
- package/src/gallery/edit.js +5 -0
- package/src/gallery/shared.js +6 -11
- package/src/gallery/test/__snapshots__/index.native.js.snap +71 -71
- package/src/gallery/test/__snapshots__/transforms.native.js.snap +53 -0
- package/src/gallery/test/transforms.native.js +52 -0
- package/src/gallery/use-image-sizes.js +3 -16
- package/src/gallery/v1/edit.js +8 -16
- package/src/gallery/v1/gallery-image.js +1 -2
- package/src/gallery/v1/shared.js +5 -10
- package/src/group/test/__snapshots__/edit.native.js.snap +5 -5
- package/src/group/test/__snapshots__/transforms.native.js.snap +35 -0
- package/src/group/test/transforms.native.js +75 -0
- package/src/heading/test/__snapshots__/index.native.js.snap +1 -1
- package/src/heading/test/__snapshots__/transforms.native.js.snap +47 -0
- package/src/heading/test/transforms.native.js +46 -0
- package/src/image/edit.js +4 -4
- package/src/image/image.js +4 -9
- package/src/image/index.php +4 -4
- package/src/image/test/__snapshots__/transforms.native.js.snap +49 -0
- package/src/image/test/transforms.native.js +48 -0
- package/src/image/utils.js +2 -2
- package/src/index.js +2 -0
- package/src/latest-comments/edit.js +3 -0
- package/src/latest-posts/edit.js +15 -16
- package/src/latest-posts/edit.native.js +3 -3
- package/src/latest-posts/test/__snapshots__/transforms.native.js.snap +15 -0
- package/src/latest-posts/test/transforms.native.js +61 -0
- package/src/list/ordered-list-settings.js +1 -0
- package/src/list/test/__snapshots__/edit.native.js.snap +4 -4
- package/src/list/test/__snapshots__/transforms.native.js.snap +85 -0
- package/src/list/test/transforms.native.js +56 -0
- package/src/list-item/edit.js +10 -3
- package/src/list-item/hooks/use-outdent-list-item.js +2 -1
- package/src/loginout/edit.js +2 -0
- package/src/media-text/constants.js +16 -0
- package/src/media-text/edit.js +10 -18
- package/src/media-text/edit.native.js +3 -9
- package/src/media-text/test/__snapshots__/transforms.native.js.snap +73 -0
- package/src/media-text/test/transforms.native.js +112 -0
- package/src/media-text/transforms.js +24 -51
- package/src/missing/test/__snapshots__/edit.native.js.snap +21 -3
- package/src/more/edit.js +1 -0
- package/src/more/test/__snapshots__/transforms.native.js.snap +19 -0
- package/src/more/test/transforms.native.js +42 -0
- package/src/navigation/edit/index.js +121 -76
- package/src/navigation/edit/inner-blocks.js +3 -0
- package/src/navigation/edit/menu-inspector-controls.js +2 -7
- package/src/navigation/edit/navigation-menu-selector.js +41 -25
- package/src/navigation/edit/overlay-menu-preview.js +1 -0
- package/src/navigation/edit/placeholder/index.js +1 -1
- package/src/navigation/edit/unsaved-inner-blocks.js +46 -32
- package/src/navigation/edit/use-convert-classic-menu-to-block-menu.js +124 -122
- package/src/navigation/edit/use-create-navigation-menu.js +1 -1
- package/src/navigation/edit/use-generate-default-navigation-title.js +1 -1
- package/src/navigation/edit/use-navigation-notice.js +16 -13
- package/src/navigation/editor.scss +23 -20
- package/src/navigation/index.php +5 -3
- package/src/navigation-link/edit.js +0 -9
- package/src/navigation-link/index.php +5 -8
- package/src/navigation-link/test/__snapshots__/hooks.js.snap +12 -12
- package/src/navigation-submenu/edit.js +0 -10
- package/src/navigation-submenu/index.php +23 -6
- package/src/nextpage/test/__snapshots__/transforms.native.js.snap +19 -0
- package/src/nextpage/test/transforms.native.js +42 -0
- package/src/page-list/convert-to-links-modal.js +38 -0
- package/src/page-list/edit.js +82 -69
- package/src/page-list/editor.scss +6 -0
- package/src/page-list-item/edit.js +2 -3
- package/src/paragraph/edit.js +1 -0
- package/src/paragraph/test/__snapshots__/transforms.native.js.snap +59 -0
- package/src/paragraph/test/transforms.native.js +50 -0
- package/src/post-author/edit.js +4 -0
- package/src/post-author-name/edit.js +2 -0
- package/src/post-content/edit.js +5 -1
- package/src/post-date/edit.js +2 -0
- package/src/post-excerpt/edit.js +1 -0
- package/src/post-excerpt/editor.scss +1 -1
- package/src/post-excerpt/index.php +1 -2
- package/src/post-featured-image/dimension-controls.js +0 -8
- package/src/post-featured-image/edit.js +3 -1
- package/src/post-featured-image/style.scss +1 -0
- package/src/post-navigation-link/edit.js +2 -0
- package/src/post-terms/index.php +1 -0
- package/src/post-terms/use-post-terms.js +1 -1
- package/src/post-time-to-read/block.json +20 -0
- package/src/post-time-to-read/edit.js +101 -0
- package/src/post-time-to-read/icon.js +15 -0
- package/src/post-time-to-read/index.js +17 -0
- package/src/post-time-to-read/index.php +62 -0
- package/src/post-title/edit.js +2 -0
- package/src/preformatted/test/__snapshots__/edit.native.js.snap +10 -10
- package/src/preformatted/test/__snapshots__/transforms.native.js.snap +31 -0
- package/src/preformatted/test/transforms.native.js +42 -0
- package/src/pullquote/deprecated.js +2 -6
- package/src/pullquote/test/__snapshots__/transforms.native.js.snap +47 -0
- package/src/pullquote/test/transforms.native.js +46 -0
- package/src/query/edit/inspector-controls/index.js +1 -0
- package/src/query/edit/query-placeholder.js +10 -5
- package/src/query/editor.scss +1 -0
- package/src/query/test/utils.js +33 -1
- package/src/query/utils.js +19 -6
- package/src/query-title/edit.js +2 -0
- package/src/quote/test/__snapshots__/transforms.native.js.snap +39 -0
- package/src/quote/test/transforms.native.js +67 -0
- package/src/read-more/edit.js +1 -0
- package/src/rss/edit.js +3 -0
- package/src/search/test/__snapshots__/edit.native.js.snap +71 -61
- package/src/search/test/__snapshots__/transforms.native.js.snap +15 -0
- package/src/search/test/transforms.native.js +40 -0
- package/src/separator/test/__snapshots__/edit.native.js.snap +1 -1
- package/src/separator/test/__snapshots__/transforms.native.js.snap +19 -0
- package/src/separator/test/transforms.native.js +42 -0
- package/src/shortcode/test/__snapshots__/transforms.native.js.snap +19 -0
- package/src/shortcode/test/transforms.native.js +42 -0
- package/src/site-logo/edit.js +3 -0
- package/src/site-logo/editor.scss +3 -3
- package/src/site-logo/index.php +7 -2
- package/src/site-tagline/block.json +1 -0
- package/src/site-title/edit/index.js +2 -0
- package/src/social-link/index.php +6 -6
- package/src/social-links/edit.js +3 -0
- package/src/social-links/test/__snapshots__/edit.native.js.snap +16 -16
- package/src/social-links/test/__snapshots__/transforms.native.js.snap +31 -0
- package/src/social-links/test/transforms.native.js +53 -0
- package/src/spacer/controls.native.js +13 -5
- package/src/spacer/edit.native.js +45 -6
- package/src/spacer/save.native.js +18 -0
- package/src/spacer/test/__snapshots__/index.native.js.snap +21 -9
- package/src/spacer/test/__snapshots__/transforms.native.js.snap +19 -0
- package/src/spacer/test/index.native.js +81 -0
- package/src/spacer/test/transforms.native.js +42 -0
- package/src/table/edit.js +3 -0
- package/src/table/state.js +8 -17
- package/src/table-of-contents/edit.js +1 -0
- package/src/tag-cloud/edit.js +1 -0
- package/src/template-part/edit/import-controls.js +26 -34
- package/src/template-part/edit/utils/transformers.js +96 -19
- package/src/template-part/index.php +7 -6
- package/src/text-columns/edit.js +1 -6
- package/src/text-columns/save.js +1 -6
- package/src/verse/test/__snapshots__/edit.native.js.snap +2 -2
- package/src/verse/test/__snapshots__/transforms.native.js.snap +25 -0
- package/src/verse/test/transforms.native.js +42 -0
- package/src/video/edit-common-settings.js +5 -0
- package/src/video/test/__snapshots__/transforms.native.js.snap +41 -0
- package/src/video/test/transforms.native.js +48 -0
- package/tsconfig.json +2 -1
- package/tsconfig.tsbuildinfo +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/block-library/src/media-text/transforms.js"],"names":["transforms","from","type","blocks","transform","alt","url","id","anchor","mediaAlt","mediaId","mediaUrl","mediaType","src","innerBlocks","align","backgroundType","customGradient","customOverlayColor","gradient","overlayColor","additionalAttributes","style","color","background","backgroundColor","to","isMatch","focalPoint","textColor","coverAttributes","dimRatio","customTextColor","text","coloredInnerBlocks","map","innerBlock","attributes","innerStyle","newAttributes","name"],"mappings":";;;;;;;AAGA;;AAHA;AACA;AACA;AAGA,MAAMA,UAAU,GAAG;AAClBC,EAAAA,IAAI,EAAE,CACL;AACCC,IAAAA,IAAI,EAAE,OADP;AAECC,IAAAA,MAAM,EAAE,CAAE,YAAF,CAFT;AAGCC,IAAAA,SAAS,EAAE;AAAA,UAAE;AAAEC,QAAAA,GAAF;AAAOC,QAAAA,GAAP;AAAYC,QAAAA,EAAZ;AAAgBC,QAAAA;AAAhB,OAAF;AAAA,aACV,yBAAa,iBAAb,EAAgC;AAC/BC,QAAAA,QAAQ,EAAEJ,GADqB;AAE/BK,QAAAA,OAAO,EAAEH,EAFsB;AAG/BI,QAAAA,QAAQ,EAAEL,GAHqB;AAI/BM,QAAAA,SAAS,EAAE,OAJoB;AAK/BJ,QAAAA;AAL+B,OAAhC,CADU;AAAA;AAHZ,GADK,EAaL;AACCN,IAAAA,IAAI,EAAE,OADP;AAECC,IAAAA,MAAM,EAAE,CAAE,YAAF,CAFT;AAGCC,IAAAA,SAAS,EAAE;AAAA,UAAE;AAAES,QAAAA,GAAF;AAAON,QAAAA,EAAP;AAAWC,QAAAA;AAAX,OAAF;AAAA,aACV,yBAAa,iBAAb,EAAgC;AAC/BE,QAAAA,OAAO,EAAEH,EADsB;AAE/BI,QAAAA,QAAQ,EAAEE,GAFqB;AAG/BD,QAAAA,SAAS,EAAE,OAHoB;AAI/BJ,QAAAA;AAJ+B,OAAhC,CADU;AAAA;AAHZ,GAbK,EAwBL;AACCN,IAAAA,IAAI,EAAE,OADP;AAECC,IAAAA,MAAM,EAAE,CAAE,YAAF,CAFT;AAGCC,IAAAA,SAAS,EAAE,QAaVU,WAbU,KAcN;AAAA,UAbJ;AACCC,QAAAA,KADD;AAECV,QAAAA,GAFD;AAGCG,QAAAA,MAHD;AAICQ,QAAAA,cAJD;AAKCC,QAAAA,cALD;AAMCC,QAAAA,kBAND;AAOCC,QAAAA,QAPD;AAQCZ,QAAAA,EARD;AASCa,QAAAA,YATD;AAUCd,QAAAA;AAVD,OAaI;AACJ,UAAIe,oBAAoB,GAAG,EAA3B;;AAEA,UAAKJ,cAAL,EAAsB;AACrBI,QAAAA,oBAAoB,GAAG;AACtBC,UAAAA,KAAK,EAAE;AACNC,YAAAA,KAAK,EAAE;AACNJ,cAAAA,QAAQ,EAAEF;AADJ;AADD;AADe,SAAvB;AAOA,OARD,MAQO,IAAKC,kBAAL,EAA0B;AAChCG,QAAAA,oBAAoB,GAAG;AACtBC,UAAAA,KAAK,EAAE;AACNC,YAAAA,KAAK,EAAE;AACNC,cAAAA,UAAU,EAAEN;AADN;AADD;AADe,SAAvB;AAOA;;AAED,aAAO,yBACN,iBADM,EAEN;AACCH,QAAAA,KADD;AAECP,QAAAA,MAFD;AAGCiB,QAAAA,eAAe,EAAEL,YAHlB;AAICD,QAAAA,QAJD;AAKCV,QAAAA,QAAQ,EAAEJ,GALX;AAMCK,QAAAA,OAAO,EAAEH,EANV;AAOCK,QAAAA,SAAS,EAAEI,cAPZ;AAQCL,QAAAA,QAAQ,EAAEL,GARX;AASC,WAAGe;AATJ,OAFM,EAaNP,WAbM,CAAP;AAeA;AArDF,GAxBK,CADY;AAiFlBY,EAAAA,EAAE,EAAE,CACH;AACCxB,IAAAA,IAAI,EAAE,OADP;AAECC,IAAAA,MAAM,EAAE,CAAE,YAAF,CAFT;AAGCwB,IAAAA,OAAO,EAAE,SAA+B;AAAA,UAA7B;AAAEf,QAAAA,SAAF;AAAaD,QAAAA;AAAb,OAA6B;AACvC,aAAO,CAAEA,QAAF,IAAcC,SAAS,KAAK,OAAnC;AACA,KALF;AAMCR,IAAAA,SAAS,EAAE,SAA+C;AAAA,UAA7C;AAAEK,QAAAA,QAAF;AAAYC,QAAAA,OAAZ;AAAqBC,QAAAA,QAArB;AAA+BH,QAAAA;AAA/B,OAA6C;AACzD,aAAO,yBAAa,YAAb,EAA2B;AACjCH,QAAAA,GAAG,EAAEI,QAD4B;AAEjCF,QAAAA,EAAE,EAAEG,OAF6B;AAGjCJ,QAAAA,GAAG,EAAEK,QAH4B;AAIjCH,QAAAA;AAJiC,OAA3B,CAAP;AAMA;AAbF,GADG,EAgBH;AACCN,IAAAA,IAAI,EAAE,OADP;AAECC,IAAAA,MAAM,EAAE,CAAE,YAAF,CAFT;AAGCwB,IAAAA,OAAO,EAAE,SAA+B;AAAA,UAA7B;AAAEf,QAAAA,SAAF;AAAaD,QAAAA;AAAb,OAA6B;AACvC,aAAO,CAAEA,QAAF,IAAcC,SAAS,KAAK,OAAnC;AACA,KALF;AAMCR,IAAAA,SAAS,EAAE,SAAqC;AAAA,UAAnC;AAAEM,QAAAA,OAAF;AAAWC,QAAAA,QAAX;AAAqBH,QAAAA;AAArB,OAAmC;AAC/C,aAAO,yBAAa,YAAb,EAA2B;AACjCD,QAAAA,EAAE,EAAEG,OAD6B;AAEjCG,QAAAA,GAAG,EAAEF,QAF4B;AAGjCH,QAAAA;AAHiC,OAA3B,CAAP;AAKA;AAZF,GAhBG,EA8BH;AACCN,IAAAA,IAAI,EAAE,OADP;AAECC,IAAAA,MAAM,EAAE,CAAE,YAAF,CAFT;AAGCC,IAAAA,SAAS,EAAE,QAcVU,WAdU,KAeN;AAAA;;AAAA,UAdJ;AACCC,QAAAA,KADD;AAECP,QAAAA,MAFD;AAGCiB,QAAAA,eAHD;AAICG,QAAAA,UAJD;AAKCT,QAAAA,QALD;AAMCV,QAAAA,QAND;AAOCC,QAAAA,OAPD;AAQCE,QAAAA,SARD;AASCD,QAAAA,QATD;AAUCW,QAAAA,KAVD;AAWCO,QAAAA;AAXD,OAcI;AACJ,YAAMR,oBAAoB,GAAG,EAA7B;;AAEA,UAAKC,KAAL,aAAKA,KAAL,+BAAKA,KAAK,CAAEC,KAAZ,yCAAK,aAAcJ,QAAnB,EAA8B;AAC7BE,QAAAA,oBAAoB,CAACJ,cAArB,GAAsCK,KAAK,CAACC,KAAN,CAAYJ,QAAlD;AACA,OAFD,MAEO,IAAKG,KAAL,aAAKA,KAAL,gCAAKA,KAAK,CAAEC,KAAZ,0CAAK,cAAcC,UAAnB,EAAgC;AACtCH,QAAAA,oBAAoB,CAACH,kBAArB,GACCI,KAAK,CAACC,KAAN,CAAYC,UADb;AAEA;;AAED,YAAMM,eAAe,GAAG;AACvBf,QAAAA,KADuB;AAEvBV,QAAAA,GAAG,EAAEI,QAFkB;AAGvBD,QAAAA,MAHuB;AAIvBQ,QAAAA,cAAc,EAAEJ,SAJO;AAKvBmB,QAAAA,QAAQ,EAAE,CAAC,CAAEpB,QAAH,GAAc,EAAd,GAAmB,GALN;AAMvBiB,QAAAA,UANuB;AAOvBT,QAAAA,QAPuB;AAQvBZ,QAAAA,EAAE,EAAEG,OARmB;AASvBU,QAAAA,YAAY,EAAEK,eATS;AAUvBnB,QAAAA,GAAG,EAAEK,QAVkB;AAWvB,WAAGU;AAXoB,OAAxB;AAaA,YAAMW,eAAe,GAAGV,KAAH,aAAGA,KAAH,wCAAGA,KAAK,CAAEC,KAAV,kDAAG,cAAcU,IAAtC,CAvBI,CAyBJ;AACA;AACA;;AACA,UAAK,CAAEJ,SAAF,IAAe,CAAEG,eAAtB,EAAwC;AACvC,eAAO,yBACN,YADM,EAENF,eAFM,EAGNhB,WAHM,CAAP;AAKA;;AAED,YAAMoB,kBAAkB,GAAGpB,WAAW,CAACqB,GAAZ,CAAmBC,UAAF,IAAkB;AAAA;;AAC7D,cAAM;AACLC,UAAAA,UAAU,EAAE;AAAEf,YAAAA,KAAK,EAAEgB;AAAT;AADP,YAEFF,UAFJ,CAD6D,CAK7D;AACA;;AACA,YACCA,UAAU,CAACC,UAAX,CAAsBR,SAAtB,IACAS,UADA,aACAA,UADA,oCACAA,UAAU,CAAEf,KADZ,8CACA,kBAAmBU,IAFpB,EAGE;AACD,iBAAOG,UAAP;AACA;;AAED,cAAMG,aAAa,GAAG;AAAEV,UAAAA;AAAF,SAAtB,CAd6D,CAgB7D;AACA;;AACA,YAAKG,eAAL,EAAuB;AACtBO,UAAAA,aAAa,CAACjB,KAAd,GAAsB,EACrB,GAAGgB,UADkB;AAErBf,YAAAA,KAAK,EAAE,EACN,IAAGe,UAAH,aAAGA,UAAH,uBAAGA,UAAU,CAAEf,KAAf,CADM;AAENU,cAAAA,IAAI,EAAED;AAFA;AAFc,WAAtB;AAOA;;AAED,eAAO,yBACNI,UAAU,CAACI,IADL,EAEN,EACC,GAAGJ,UAAU,CAACC,UADf;AAEC,aAAGE;AAFJ,SAFM,EAMNH,UAAU,CAACtB,WANL,CAAP;AAQA,OApC0B,CAA3B;AAsCA,aAAO,yBACN,YADM,EAENgB,eAFM,EAGNI,kBAHM,CAAP;AAKA;AAjGF,GA9BG;AAjFc,CAAnB;eAqNelC,U","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { createBlock } from '@wordpress/blocks';\n\nconst transforms = {\n\tfrom: [\n\t\t{\n\t\t\ttype: 'block',\n\t\t\tblocks: [ 'core/image' ],\n\t\t\ttransform: ( { alt, url, id, anchor } ) =>\n\t\t\t\tcreateBlock( 'core/media-text', {\n\t\t\t\t\tmediaAlt: alt,\n\t\t\t\t\tmediaId: id,\n\t\t\t\t\tmediaUrl: url,\n\t\t\t\t\tmediaType: 'image',\n\t\t\t\t\tanchor,\n\t\t\t\t} ),\n\t\t},\n\t\t{\n\t\t\ttype: 'block',\n\t\t\tblocks: [ 'core/video' ],\n\t\t\ttransform: ( { src, id, anchor } ) =>\n\t\t\t\tcreateBlock( 'core/media-text', {\n\t\t\t\t\tmediaId: id,\n\t\t\t\t\tmediaUrl: src,\n\t\t\t\t\tmediaType: 'video',\n\t\t\t\t\tanchor,\n\t\t\t\t} ),\n\t\t},\n\t\t{\n\t\t\ttype: 'block',\n\t\t\tblocks: [ 'core/cover' ],\n\t\t\ttransform: (\n\t\t\t\t{\n\t\t\t\t\talign,\n\t\t\t\t\talt,\n\t\t\t\t\tanchor,\n\t\t\t\t\tbackgroundType,\n\t\t\t\t\tcustomGradient,\n\t\t\t\t\tcustomOverlayColor,\n\t\t\t\t\tgradient,\n\t\t\t\t\tid,\n\t\t\t\t\toverlayColor,\n\t\t\t\t\turl,\n\t\t\t\t},\n\t\t\t\tinnerBlocks\n\t\t\t) => {\n\t\t\t\tlet additionalAttributes = {};\n\n\t\t\t\tif ( customGradient ) {\n\t\t\t\t\tadditionalAttributes = {\n\t\t\t\t\t\tstyle: {\n\t\t\t\t\t\t\tcolor: {\n\t\t\t\t\t\t\t\tgradient: customGradient,\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} else if ( customOverlayColor ) {\n\t\t\t\t\tadditionalAttributes = {\n\t\t\t\t\t\tstyle: {\n\t\t\t\t\t\t\tcolor: {\n\t\t\t\t\t\t\t\tbackground: customOverlayColor,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t};\n\t\t\t\t}\n\n\t\t\t\treturn createBlock(\n\t\t\t\t\t'core/media-text',\n\t\t\t\t\t{\n\t\t\t\t\t\talign,\n\t\t\t\t\t\tanchor,\n\t\t\t\t\t\tbackgroundColor: overlayColor,\n\t\t\t\t\t\tgradient,\n\t\t\t\t\t\tmediaAlt: alt,\n\t\t\t\t\t\tmediaId: id,\n\t\t\t\t\t\tmediaType: backgroundType,\n\t\t\t\t\t\tmediaUrl: url,\n\t\t\t\t\t\t...additionalAttributes,\n\t\t\t\t\t},\n\t\t\t\t\tinnerBlocks\n\t\t\t\t);\n\t\t\t},\n\t\t},\n\t],\n\tto: [\n\t\t{\n\t\t\ttype: 'block',\n\t\t\tblocks: [ 'core/image' ],\n\t\t\tisMatch: ( { mediaType, mediaUrl } ) => {\n\t\t\t\treturn ! mediaUrl || mediaType === 'image';\n\t\t\t},\n\t\t\ttransform: ( { mediaAlt, mediaId, mediaUrl, anchor } ) => {\n\t\t\t\treturn createBlock( 'core/image', {\n\t\t\t\t\talt: mediaAlt,\n\t\t\t\t\tid: mediaId,\n\t\t\t\t\turl: mediaUrl,\n\t\t\t\t\tanchor,\n\t\t\t\t} );\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\ttype: 'block',\n\t\t\tblocks: [ 'core/video' ],\n\t\t\tisMatch: ( { mediaType, mediaUrl } ) => {\n\t\t\t\treturn ! mediaUrl || mediaType === 'video';\n\t\t\t},\n\t\t\ttransform: ( { mediaId, mediaUrl, anchor } ) => {\n\t\t\t\treturn createBlock( 'core/video', {\n\t\t\t\t\tid: mediaId,\n\t\t\t\t\tsrc: mediaUrl,\n\t\t\t\t\tanchor,\n\t\t\t\t} );\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\ttype: 'block',\n\t\t\tblocks: [ 'core/cover' ],\n\t\t\ttransform: (\n\t\t\t\t{\n\t\t\t\t\talign,\n\t\t\t\t\tanchor,\n\t\t\t\t\tbackgroundColor,\n\t\t\t\t\tfocalPoint,\n\t\t\t\t\tgradient,\n\t\t\t\t\tmediaAlt,\n\t\t\t\t\tmediaId,\n\t\t\t\t\tmediaType,\n\t\t\t\t\tmediaUrl,\n\t\t\t\t\tstyle,\n\t\t\t\t\ttextColor,\n\t\t\t\t},\n\t\t\t\tinnerBlocks\n\t\t\t) => {\n\t\t\t\tconst additionalAttributes = {};\n\n\t\t\t\tif ( style?.color?.gradient ) {\n\t\t\t\t\tadditionalAttributes.customGradient = style.color.gradient;\n\t\t\t\t} else if ( style?.color?.background ) {\n\t\t\t\t\tadditionalAttributes.customOverlayColor =\n\t\t\t\t\t\tstyle.color.background;\n\t\t\t\t}\n\n\t\t\t\tconst coverAttributes = {\n\t\t\t\t\talign,\n\t\t\t\t\talt: mediaAlt,\n\t\t\t\t\tanchor,\n\t\t\t\t\tbackgroundType: mediaType,\n\t\t\t\t\tdimRatio: !! mediaUrl ? 50 : 100,\n\t\t\t\t\tfocalPoint,\n\t\t\t\t\tgradient,\n\t\t\t\t\tid: mediaId,\n\t\t\t\t\toverlayColor: backgroundColor,\n\t\t\t\t\turl: mediaUrl,\n\t\t\t\t\t...additionalAttributes,\n\t\t\t\t};\n\t\t\t\tconst customTextColor = style?.color?.text;\n\n\t\t\t\t// Attempt to maintain any text color selection.\n\t\t\t\t// Cover block's do not opt into color block support so we\n\t\t\t\t// cannot directly copy the color attributes across.\n\t\t\t\tif ( ! textColor && ! customTextColor ) {\n\t\t\t\t\treturn createBlock(\n\t\t\t\t\t\t'core/cover',\n\t\t\t\t\t\tcoverAttributes,\n\t\t\t\t\t\tinnerBlocks\n\t\t\t\t\t);\n\t\t\t\t}\n\n\t\t\t\tconst coloredInnerBlocks = innerBlocks.map( ( innerBlock ) => {\n\t\t\t\t\tconst {\n\t\t\t\t\t\tattributes: { style: innerStyle },\n\t\t\t\t\t} = innerBlock;\n\n\t\t\t\t\t// Only apply the media and text color if the inner block\n\t\t\t\t\t// doesn't set its own color block support selection.\n\t\t\t\t\tif (\n\t\t\t\t\t\tinnerBlock.attributes.textColor ||\n\t\t\t\t\t\tinnerStyle?.color?.text\n\t\t\t\t\t) {\n\t\t\t\t\t\treturn innerBlock;\n\t\t\t\t\t}\n\n\t\t\t\t\tconst newAttributes = { textColor };\n\n\t\t\t\t\t// Only add or extend inner block's style object if we have\n\t\t\t\t\t// a custom text color from the media & text block.\n\t\t\t\t\tif ( customTextColor ) {\n\t\t\t\t\t\tnewAttributes.style = {\n\t\t\t\t\t\t\t...innerStyle,\n\t\t\t\t\t\t\tcolor: {\n\t\t\t\t\t\t\t\t...innerStyle?.color,\n\t\t\t\t\t\t\t\ttext: customTextColor,\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\treturn createBlock(\n\t\t\t\t\t\tinnerBlock.name,\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t...innerBlock.attributes,\n\t\t\t\t\t\t\t...newAttributes,\n\t\t\t\t\t\t},\n\t\t\t\t\t\tinnerBlock.innerBlocks\n\t\t\t\t\t);\n\t\t\t\t} );\n\n\t\t\t\treturn createBlock(\n\t\t\t\t\t'core/cover',\n\t\t\t\t\tcoverAttributes,\n\t\t\t\t\tcoloredInnerBlocks\n\t\t\t\t);\n\t\t\t},\n\t\t},\n\t],\n};\n\nexport default transforms;\n"]}
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/media-text/transforms.js"],"names":["transforms","from","type","blocks","transform","alt","url","id","anchor","mediaAlt","mediaId","mediaUrl","mediaType","src","innerBlocks","align","backgroundType","customGradient","customOverlayColor","gradient","overlayColor","style","textColor","additionalAttributes","color","background","text","backgroundColor","to","isMatch","focalPoint","coverAttributes","dimRatio"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { createBlock } from '@wordpress/blocks';\n\nconst transforms = {\n\tfrom: [\n\t\t{\n\t\t\ttype: 'block',\n\t\t\tblocks: [ 'core/image' ],\n\t\t\ttransform: ( { alt, url, id, anchor } ) =>\n\t\t\t\tcreateBlock( 'core/media-text', {\n\t\t\t\t\tmediaAlt: alt,\n\t\t\t\t\tmediaId: id,\n\t\t\t\t\tmediaUrl: url,\n\t\t\t\t\tmediaType: 'image',\n\t\t\t\t\tanchor,\n\t\t\t\t} ),\n\t\t},\n\t\t{\n\t\t\ttype: 'block',\n\t\t\tblocks: [ 'core/video' ],\n\t\t\ttransform: ( { src, id, anchor } ) =>\n\t\t\t\tcreateBlock( 'core/media-text', {\n\t\t\t\t\tmediaId: id,\n\t\t\t\t\tmediaUrl: src,\n\t\t\t\t\tmediaType: 'video',\n\t\t\t\t\tanchor,\n\t\t\t\t} ),\n\t\t},\n\t\t{\n\t\t\ttype: 'block',\n\t\t\tblocks: [ 'core/cover' ],\n\t\t\ttransform: (\n\t\t\t\t{\n\t\t\t\t\talign,\n\t\t\t\t\talt,\n\t\t\t\t\tanchor,\n\t\t\t\t\tbackgroundType,\n\t\t\t\t\tcustomGradient,\n\t\t\t\t\tcustomOverlayColor,\n\t\t\t\t\tgradient,\n\t\t\t\t\tid,\n\t\t\t\t\toverlayColor,\n\t\t\t\t\tstyle,\n\t\t\t\t\ttextColor,\n\t\t\t\t\turl,\n\t\t\t\t},\n\t\t\t\tinnerBlocks\n\t\t\t) => {\n\t\t\t\tlet additionalAttributes = {};\n\n\t\t\t\tif ( customGradient ) {\n\t\t\t\t\tadditionalAttributes = {\n\t\t\t\t\t\tstyle: {\n\t\t\t\t\t\t\tcolor: {\n\t\t\t\t\t\t\t\tgradient: customGradient,\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} else if ( customOverlayColor ) {\n\t\t\t\t\tadditionalAttributes = {\n\t\t\t\t\t\tstyle: {\n\t\t\t\t\t\t\tcolor: {\n\t\t\t\t\t\t\t\tbackground: customOverlayColor,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t};\n\t\t\t\t}\n\n\t\t\t\t// Maintain custom text color block support value.\n\t\t\t\tif ( style?.color?.text ) {\n\t\t\t\t\tadditionalAttributes.style = {\n\t\t\t\t\t\tcolor: {\n\t\t\t\t\t\t\t...additionalAttributes.style?.color,\n\t\t\t\t\t\t\ttext: style.color.text,\n\t\t\t\t\t\t},\n\t\t\t\t\t};\n\t\t\t\t}\n\n\t\t\t\treturn createBlock(\n\t\t\t\t\t'core/media-text',\n\t\t\t\t\t{\n\t\t\t\t\t\talign,\n\t\t\t\t\t\tanchor,\n\t\t\t\t\t\tbackgroundColor: overlayColor,\n\t\t\t\t\t\tgradient,\n\t\t\t\t\t\tmediaAlt: alt,\n\t\t\t\t\t\tmediaId: id,\n\t\t\t\t\t\tmediaType: backgroundType,\n\t\t\t\t\t\tmediaUrl: url,\n\t\t\t\t\t\ttextColor,\n\t\t\t\t\t\t...additionalAttributes,\n\t\t\t\t\t},\n\t\t\t\t\tinnerBlocks\n\t\t\t\t);\n\t\t\t},\n\t\t},\n\t],\n\tto: [\n\t\t{\n\t\t\ttype: 'block',\n\t\t\tblocks: [ 'core/image' ],\n\t\t\tisMatch: ( { mediaType, mediaUrl } ) => {\n\t\t\t\treturn ! mediaUrl || mediaType === 'image';\n\t\t\t},\n\t\t\ttransform: ( { mediaAlt, mediaId, mediaUrl, anchor } ) => {\n\t\t\t\treturn createBlock( 'core/image', {\n\t\t\t\t\talt: mediaAlt,\n\t\t\t\t\tid: mediaId,\n\t\t\t\t\turl: mediaUrl,\n\t\t\t\t\tanchor,\n\t\t\t\t} );\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\ttype: 'block',\n\t\t\tblocks: [ 'core/video' ],\n\t\t\tisMatch: ( { mediaType, mediaUrl } ) => {\n\t\t\t\treturn ! mediaUrl || mediaType === 'video';\n\t\t\t},\n\t\t\ttransform: ( { mediaId, mediaUrl, anchor } ) => {\n\t\t\t\treturn createBlock( 'core/video', {\n\t\t\t\t\tid: mediaId,\n\t\t\t\t\tsrc: mediaUrl,\n\t\t\t\t\tanchor,\n\t\t\t\t} );\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\ttype: 'block',\n\t\t\tblocks: [ 'core/cover' ],\n\t\t\ttransform: (\n\t\t\t\t{\n\t\t\t\t\talign,\n\t\t\t\t\tanchor,\n\t\t\t\t\tbackgroundColor,\n\t\t\t\t\tfocalPoint,\n\t\t\t\t\tgradient,\n\t\t\t\t\tmediaAlt,\n\t\t\t\t\tmediaId,\n\t\t\t\t\tmediaType,\n\t\t\t\t\tmediaUrl,\n\t\t\t\t\tstyle,\n\t\t\t\t\ttextColor,\n\t\t\t\t},\n\t\t\t\tinnerBlocks\n\t\t\t) => {\n\t\t\t\tconst additionalAttributes = {};\n\n\t\t\t\t// Migrate the background styles or gradient to Cover's custom\n\t\t\t\t// gradient and overlay properties.\n\t\t\t\tif ( style?.color?.gradient ) {\n\t\t\t\t\tadditionalAttributes.customGradient = style.color.gradient;\n\t\t\t\t} else if ( style?.color?.background ) {\n\t\t\t\t\tadditionalAttributes.customOverlayColor =\n\t\t\t\t\t\tstyle.color.background;\n\t\t\t\t}\n\n\t\t\t\t// Maintain custom text color support style.\n\t\t\t\tif ( style?.color?.text ) {\n\t\t\t\t\tadditionalAttributes.style = {\n\t\t\t\t\t\tcolor: { text: style.color.text },\n\t\t\t\t\t};\n\t\t\t\t}\n\n\t\t\t\tconst coverAttributes = {\n\t\t\t\t\talign,\n\t\t\t\t\talt: mediaAlt,\n\t\t\t\t\tanchor,\n\t\t\t\t\tbackgroundType: mediaType,\n\t\t\t\t\tdimRatio: !! mediaUrl ? 50 : 100,\n\t\t\t\t\tfocalPoint,\n\t\t\t\t\tgradient,\n\t\t\t\t\tid: mediaId,\n\t\t\t\t\toverlayColor: backgroundColor,\n\t\t\t\t\ttextColor,\n\t\t\t\t\turl: mediaUrl,\n\t\t\t\t\t...additionalAttributes,\n\t\t\t\t};\n\n\t\t\t\treturn createBlock(\n\t\t\t\t\t'core/cover',\n\t\t\t\t\tcoverAttributes,\n\t\t\t\t\tinnerBlocks\n\t\t\t\t);\n\t\t\t},\n\t\t},\n\t],\n};\n\nexport default transforms;\n"]}
|
package/build/more/edit.js
CHANGED
|
@@ -58,6 +58,7 @@ function MoreEdit(_ref) {
|
|
|
58
58
|
width: `${(customText ? customText : DEFAULT_TEXT).length + 1.2}em`
|
|
59
59
|
};
|
|
60
60
|
return (0, _element.createElement)(_element.Fragment, null, (0, _element.createElement)(_blockEditor.InspectorControls, null, (0, _element.createElement)(_components.PanelBody, null, (0, _element.createElement)(_components.ToggleControl, {
|
|
61
|
+
__nextHasNoMarginBottom: true,
|
|
61
62
|
label: (0, _i18n.__)('Hide the excerpt on the full content page'),
|
|
62
63
|
checked: !!noTeaser,
|
|
63
64
|
onChange: toggleHideExcerpt,
|
package/build/more/edit.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/block-library/src/more/edit.js"],"names":["DEFAULT_TEXT","MoreEdit","attributes","customText","noTeaser","insertBlocksAfter","setAttributes","onChangeInput","event","target","value","undefined","onKeyDown","keyCode","ENTER","getHideExcerptHelp","checked","toggleHideExcerpt","style","width","length"],"mappings":";;;;;;;;;AAGA;;AACA;;AACA;;AACA;;AACA;;AAPA;AACA;AACA;AAOA,MAAMA,YAAY,GAAG,cAAI,WAAJ,CAArB;;AAEe,SAASC,QAAT,OAIX;AAAA,MAJ8B;AACjCC,IAAAA,UAAU,EAAE;AAAEC,MAAAA,UAAF;AAAcC,MAAAA;AAAd,KADqB;AAEjCC,IAAAA,iBAFiC;AAGjCC,IAAAA;AAHiC,GAI9B;;AACH,QAAMC,aAAa,GAAKC,KAAF,IAAa;AAClCF,IAAAA,aAAa,CAAE;AACdH,MAAAA,UAAU,EACTK,KAAK,CAACC,MAAN,CAAaC,KAAb,KAAuB,EAAvB,GAA4BF,KAAK,CAACC,MAAN,CAAaC,KAAzC,GAAiDC;AAFpC,KAAF,CAAb;AAIA,GALD;;AAOA,QAAMC,SAAS,GAAG,SAAmB;AAAA,QAAjB;AAAEC,MAAAA;AAAF,KAAiB;;AACpC,QAAKA,OAAO,KAAKC,eAAjB,EAAyB;AACxBT,MAAAA,iBAAiB,CAAE,CAAE,yBAAa,kCAAb,CAAF,CAAF,CAAjB;AACA;AACD,GAJD;;AAMA,QAAMU,kBAAkB,GAAKC,OAAF,IAC1BA,OAAO,GACJ,cAAI,wBAAJ,CADI,GAEJ,cAAI,yBAAJ,CAHJ;;AAKA,QAAMC,iBAAiB,GAAG,MAAMX,aAAa,CAAE;AAAEF,IAAAA,QAAQ,EAAE,CAAEA;AAAd,GAAF,CAA7C;;AAEA,QAAMc,KAAK,GAAG;AACbC,IAAAA,KAAK,EAAG,GAAG,CAAEhB,UAAU,GAAGA,UAAH,GAAgBH,YAA5B,EAA2CoB,MAA3C,GAAoD,GAAK;AADvD,GAAd;AAIA,SACC,qDACC,4BAAC,8BAAD,QACC,4BAAC,qBAAD,QACC,4BAAC,yBAAD;AACC,IAAA,KAAK,EAAG,cACP,2CADO,
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/more/edit.js"],"names":["DEFAULT_TEXT","MoreEdit","attributes","customText","noTeaser","insertBlocksAfter","setAttributes","onChangeInput","event","target","value","undefined","onKeyDown","keyCode","ENTER","getHideExcerptHelp","checked","toggleHideExcerpt","style","width","length"],"mappings":";;;;;;;;;AAGA;;AACA;;AACA;;AACA;;AACA;;AAPA;AACA;AACA;AAOA,MAAMA,YAAY,GAAG,cAAI,WAAJ,CAArB;;AAEe,SAASC,QAAT,OAIX;AAAA,MAJ8B;AACjCC,IAAAA,UAAU,EAAE;AAAEC,MAAAA,UAAF;AAAcC,MAAAA;AAAd,KADqB;AAEjCC,IAAAA,iBAFiC;AAGjCC,IAAAA;AAHiC,GAI9B;;AACH,QAAMC,aAAa,GAAKC,KAAF,IAAa;AAClCF,IAAAA,aAAa,CAAE;AACdH,MAAAA,UAAU,EACTK,KAAK,CAACC,MAAN,CAAaC,KAAb,KAAuB,EAAvB,GAA4BF,KAAK,CAACC,MAAN,CAAaC,KAAzC,GAAiDC;AAFpC,KAAF,CAAb;AAIA,GALD;;AAOA,QAAMC,SAAS,GAAG,SAAmB;AAAA,QAAjB;AAAEC,MAAAA;AAAF,KAAiB;;AACpC,QAAKA,OAAO,KAAKC,eAAjB,EAAyB;AACxBT,MAAAA,iBAAiB,CAAE,CAAE,yBAAa,kCAAb,CAAF,CAAF,CAAjB;AACA;AACD,GAJD;;AAMA,QAAMU,kBAAkB,GAAKC,OAAF,IAC1BA,OAAO,GACJ,cAAI,wBAAJ,CADI,GAEJ,cAAI,yBAAJ,CAHJ;;AAKA,QAAMC,iBAAiB,GAAG,MAAMX,aAAa,CAAE;AAAEF,IAAAA,QAAQ,EAAE,CAAEA;AAAd,GAAF,CAA7C;;AAEA,QAAMc,KAAK,GAAG;AACbC,IAAAA,KAAK,EAAG,GAAG,CAAEhB,UAAU,GAAGA,UAAH,GAAgBH,YAA5B,EAA2CoB,MAA3C,GAAoD,GAAK;AADvD,GAAd;AAIA,SACC,qDACC,4BAAC,8BAAD,QACC,4BAAC,qBAAD,QACC,4BAAC,yBAAD;AACC,IAAA,uBAAuB,MADxB;AAEC,IAAA,KAAK,EAAG,cACP,2CADO,CAFT;AAKC,IAAA,OAAO,EAAG,CAAC,CAAEhB,QALd;AAMC,IAAA,QAAQ,EAAGa,iBANZ;AAOC,IAAA,IAAI,EAAGF;AAPR,IADD,CADD,CADD,EAcC,mCAAU,iCAAV,EACC;AACC,kBAAa,cAAI,uBAAJ,CADd;AAEC,IAAA,IAAI,EAAC,MAFN;AAGC,IAAA,KAAK,EAAGZ,UAHT;AAIC,IAAA,WAAW,EAAGH,YAJf;AAKC,IAAA,QAAQ,EAAGO,aALZ;AAMC,IAAA,SAAS,EAAGK,SANb;AAOC,IAAA,KAAK,EAAGM;AAPT,IADD,CAdD,CADD;AA4BA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { PanelBody, ToggleControl } from '@wordpress/components';\nimport { InspectorControls, useBlockProps } from '@wordpress/block-editor';\nimport { ENTER } from '@wordpress/keycodes';\nimport { getDefaultBlockName, createBlock } from '@wordpress/blocks';\n\nconst DEFAULT_TEXT = __( 'Read more' );\n\nexport default function MoreEdit( {\n\tattributes: { customText, noTeaser },\n\tinsertBlocksAfter,\n\tsetAttributes,\n} ) {\n\tconst onChangeInput = ( event ) => {\n\t\tsetAttributes( {\n\t\t\tcustomText:\n\t\t\t\tevent.target.value !== '' ? event.target.value : undefined,\n\t\t} );\n\t};\n\n\tconst onKeyDown = ( { keyCode } ) => {\n\t\tif ( keyCode === ENTER ) {\n\t\t\tinsertBlocksAfter( [ createBlock( getDefaultBlockName() ) ] );\n\t\t}\n\t};\n\n\tconst getHideExcerptHelp = ( checked ) =>\n\t\tchecked\n\t\t\t? __( 'The excerpt is hidden.' )\n\t\t\t: __( 'The excerpt is visible.' );\n\n\tconst toggleHideExcerpt = () => setAttributes( { noTeaser: ! noTeaser } );\n\n\tconst style = {\n\t\twidth: `${ ( customText ? customText : DEFAULT_TEXT ).length + 1.2 }em`,\n\t};\n\n\treturn (\n\t\t<>\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody>\n\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __(\n\t\t\t\t\t\t\t'Hide the excerpt on the full content page'\n\t\t\t\t\t\t) }\n\t\t\t\t\t\tchecked={ !! noTeaser }\n\t\t\t\t\t\tonChange={ toggleHideExcerpt }\n\t\t\t\t\t\thelp={ getHideExcerptHelp }\n\t\t\t\t\t/>\n\t\t\t\t</PanelBody>\n\t\t\t</InspectorControls>\n\t\t\t<div { ...useBlockProps() }>\n\t\t\t\t<input\n\t\t\t\t\taria-label={ __( '“Read more” link text' ) }\n\t\t\t\t\ttype=\"text\"\n\t\t\t\t\tvalue={ customText }\n\t\t\t\t\tplaceholder={ DEFAULT_TEXT }\n\t\t\t\t\tonChange={ onChangeInput }\n\t\t\t\t\tonKeyDown={ onKeyDown }\n\t\t\t\t\tstyle={ style }\n\t\t\t\t/>\n\t\t\t</div>\n\t\t</>\n\t);\n}\n"]}
|
|
@@ -81,7 +81,7 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
|
|
|
81
81
|
* Internal dependencies
|
|
82
82
|
*/
|
|
83
83
|
function Navigation(_ref) {
|
|
84
|
-
var _attributes$style, _attributes$style$typ;
|
|
84
|
+
var _navigationMenus$find, _attributes$style, _attributes$style$typ;
|
|
85
85
|
|
|
86
86
|
let {
|
|
87
87
|
attributes,
|
|
@@ -117,19 +117,18 @@ function Navigation(_ref) {
|
|
|
117
117
|
icon = 'handle'
|
|
118
118
|
} = attributes;
|
|
119
119
|
const ref = attributes.ref;
|
|
120
|
-
|
|
121
|
-
const setRef = postId => {
|
|
120
|
+
const setRef = (0, _element.useCallback)(postId => {
|
|
122
121
|
setAttributes({
|
|
123
122
|
ref: postId
|
|
124
123
|
});
|
|
125
|
-
};
|
|
126
|
-
|
|
124
|
+
}, [setAttributes]);
|
|
127
125
|
const recursionId = `navigationMenu/${ref}`;
|
|
128
126
|
const hasAlreadyRendered = (0, _blockEditor.__experimentalUseHasRecursion)(recursionId); // Preload classic menus, so that they don't suddenly pop-in when viewing
|
|
129
127
|
// the Select Menu dropdown.
|
|
130
128
|
|
|
131
129
|
const {
|
|
132
|
-
menus: classicMenus
|
|
130
|
+
menus: classicMenus,
|
|
131
|
+
hasResolvedMenus: hasResolvedClassicMenus
|
|
133
132
|
} = (0, _useNavigationEntities.default)();
|
|
134
133
|
const [showNavigationMenuStatusNotice, hideNavigationMenuStatusNotice] = (0, _useNavigationNotice.default)({
|
|
135
134
|
name: 'block-library/core/navigation/status'
|
|
@@ -154,24 +153,6 @@ function Navigation(_ref) {
|
|
|
154
153
|
createNavigationMenu('');
|
|
155
154
|
};
|
|
156
155
|
|
|
157
|
-
(0, _element.useEffect)(() => {
|
|
158
|
-
hideNavigationMenuStatusNotice();
|
|
159
|
-
|
|
160
|
-
if (isCreatingNavigationMenu) {
|
|
161
|
-
(0, _a11y.speak)((0, _i18n.__)(`Creating Navigation Menu.`));
|
|
162
|
-
}
|
|
163
|
-
|
|
164
|
-
if (createNavigationMenuIsSuccess) {
|
|
165
|
-
handleUpdateMenu(createNavigationMenuPost.id, {
|
|
166
|
-
focusNavigationBlock: true
|
|
167
|
-
});
|
|
168
|
-
showNavigationMenuStatusNotice((0, _i18n.__)(`Navigation Menu successfully created.`));
|
|
169
|
-
}
|
|
170
|
-
|
|
171
|
-
if (createNavigationMenuIsError) {
|
|
172
|
-
showNavigationMenuStatusNotice((0, _i18n.__)('Failed to create Navigation Menu.'));
|
|
173
|
-
}
|
|
174
|
-
}, [createNavigationMenuStatus, createNavigationMenuError, createNavigationMenuPost]);
|
|
175
156
|
const {
|
|
176
157
|
hasUncontrolledInnerBlocks,
|
|
177
158
|
uncontrolledInnerBlocks,
|
|
@@ -205,17 +186,23 @@ function Navigation(_ref) {
|
|
|
205
186
|
status: classicMenuConversionStatus,
|
|
206
187
|
error: classicMenuConversionError
|
|
207
188
|
} = (0, _useConvertClassicMenuToBlockMenu.default)(clientId);
|
|
208
|
-
const isConvertingClassicMenu = classicMenuConversionStatus === _useConvertClassicMenuToBlockMenu.CLASSIC_MENU_CONVERSION_PENDING; // Only
|
|
189
|
+
const isConvertingClassicMenu = classicMenuConversionStatus === _useConvertClassicMenuToBlockMenu.CLASSIC_MENU_CONVERSION_PENDING; // Only auto-fallback to the latest published menu.
|
|
190
|
+
// The REST API already returns items sorted by publishing date.
|
|
209
191
|
|
|
210
|
-
const
|
|
211
|
-
|
|
192
|
+
const fallbackNavigationMenuId = navigationMenus === null || navigationMenus === void 0 ? void 0 : (_navigationMenus$find = navigationMenus.find(menu => menu.status === 'publish')) === null || _navigationMenus$find === void 0 ? void 0 : _navigationMenus$find.id;
|
|
193
|
+
const handleUpdateMenu = (0, _element.useCallback)(function (menuId) {
|
|
194
|
+
let options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {
|
|
195
|
+
focusNavigationBlock: false
|
|
196
|
+
};
|
|
197
|
+
const {
|
|
198
|
+
focusNavigationBlock
|
|
199
|
+
} = options;
|
|
200
|
+
setRef(menuId);
|
|
212
201
|
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
});
|
|
218
|
-
}, [navigationMenus]); // Attempt to retrieve and prioritize any existing navigation menu unless:
|
|
202
|
+
if (focusNavigationBlock) {
|
|
203
|
+
selectBlock(clientId);
|
|
204
|
+
}
|
|
205
|
+
}, [selectBlock, clientId, setRef]); // Attempt to retrieve and prioritize any existing navigation menu unless:
|
|
219
206
|
// - the are uncontrolled inner blocks already present in the block.
|
|
220
207
|
// - the user is creating a new menu.
|
|
221
208
|
// - there are no menus to choose from.
|
|
@@ -224,7 +211,7 @@ function Navigation(_ref) {
|
|
|
224
211
|
// The aim is for the block to "just work" from a user perspective using existing data.
|
|
225
212
|
|
|
226
213
|
(0, _element.useEffect)(() => {
|
|
227
|
-
if (hasUncontrolledInnerBlocks || isCreatingNavigationMenu || ref || !
|
|
214
|
+
if (hasUncontrolledInnerBlocks || isCreatingNavigationMenu || ref || !fallbackNavigationMenuId) {
|
|
228
215
|
return;
|
|
229
216
|
}
|
|
230
217
|
/**
|
|
@@ -238,10 +225,18 @@ function Navigation(_ref) {
|
|
|
238
225
|
|
|
239
226
|
__unstableMarkNextChangeAsNotPersistent();
|
|
240
227
|
|
|
241
|
-
setRef(
|
|
242
|
-
}, [ref, isCreatingNavigationMenu,
|
|
228
|
+
setRef(fallbackNavigationMenuId);
|
|
229
|
+
}, [ref, setRef, isCreatingNavigationMenu, fallbackNavigationMenuId, hasUncontrolledInnerBlocks, __unstableMarkNextChangeAsNotPersistent]);
|
|
230
|
+
const isEntityAvailable = !isNavigationMenuMissing && isNavigationMenuResolved; // If the block has inner blocks, but no menu id, then these blocks are either:
|
|
231
|
+
// - inserted via a pattern.
|
|
232
|
+
// - inserted directly via Code View (or otherwise).
|
|
233
|
+
// - from an older version of navigation block added before the block used a wp_navigation entity.
|
|
234
|
+
// Consider this state as 'unsaved' and offer an uncontrolled version of inner blocks,
|
|
235
|
+
// that automatically saves the menu as an entity when changes are made to the inner blocks.
|
|
236
|
+
|
|
237
|
+
const hasUnsavedBlocks = hasUncontrolledInnerBlocks && !isEntityAvailable;
|
|
243
238
|
(0, _element.useEffect)(() => {
|
|
244
|
-
if (
|
|
239
|
+
if (ref || !hasResolvedClassicMenus || !hasResolvedNavigationMenus || isConvertingClassicMenu || fallbackNavigationMenuId || hasUnsavedBlocks || !(classicMenus !== null && classicMenus !== void 0 && classicMenus.length)) {
|
|
245
240
|
return;
|
|
246
241
|
} // If there's non fallback navigation menus and
|
|
247
242
|
// a classic menu with a `primary` location or slug,
|
|
@@ -259,7 +254,7 @@ function Navigation(_ref) {
|
|
|
259
254
|
});
|
|
260
255
|
convertClassicMenu(classicMenus[0].id, classicMenus[0].name, 'publish');
|
|
261
256
|
}
|
|
262
|
-
}, [hasResolvedNavigationMenus]);
|
|
257
|
+
}, [hasResolvedClassicMenus, hasResolvedNavigationMenus, hasUnsavedBlocks, classicMenus, convertClassicMenu, createNavigationMenu, fallbackNavigationMenuId, isConvertingClassicMenu, ref]);
|
|
263
258
|
const navRef = (0, _element.useRef)(); // The standard HTML5 tag for the block wrapper.
|
|
264
259
|
|
|
265
260
|
const TagName = 'nav'; // "placeholder" shown if:
|
|
@@ -281,8 +276,7 @@ function Navigation(_ref) {
|
|
|
281
276
|
|
|
282
277
|
replaceInnerBlocks(clientId, [(0, _blocks.createBlock)('core/page-list')]);
|
|
283
278
|
}
|
|
284
|
-
}, [clientId, isPlaceholder, ref]);
|
|
285
|
-
const isEntityAvailable = !isNavigationMenuMissing && isNavigationMenuResolved; // "loading" state:
|
|
279
|
+
}, [clientId, isPlaceholder, ref, __unstableMarkNextChangeAsNotPersistent, replaceInnerBlocks]); // "loading" state:
|
|
286
280
|
// - there is a menu creation process in progress.
|
|
287
281
|
// - there is a classic menu conversion process in progress.
|
|
288
282
|
// OR:
|
|
@@ -321,20 +315,6 @@ function Navigation(_ref) {
|
|
|
321
315
|
const [detectedOverlayBackgroundColor, setDetectedOverlayBackgroundColor] = (0, _element.useState)();
|
|
322
316
|
const [detectedOverlayColor, setDetectedOverlayColor] = (0, _element.useState)();
|
|
323
317
|
|
|
324
|
-
const handleUpdateMenu = function (menuId) {
|
|
325
|
-
let options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {
|
|
326
|
-
focusNavigationBlock: false
|
|
327
|
-
};
|
|
328
|
-
const {
|
|
329
|
-
focusNavigationBlock
|
|
330
|
-
} = options;
|
|
331
|
-
setRef(menuId);
|
|
332
|
-
|
|
333
|
-
if (focusNavigationBlock) {
|
|
334
|
-
selectBlock(clientId);
|
|
335
|
-
}
|
|
336
|
-
};
|
|
337
|
-
|
|
338
318
|
const onSelectClassicMenu = async classicMenu => {
|
|
339
319
|
const navMenu = await convertClassicMenu(classicMenu.id, classicMenu.name, 'draft');
|
|
340
320
|
|
|
@@ -349,6 +329,24 @@ function Navigation(_ref) {
|
|
|
349
329
|
handleUpdateMenu(menuId);
|
|
350
330
|
};
|
|
351
331
|
|
|
332
|
+
(0, _element.useEffect)(() => {
|
|
333
|
+
hideNavigationMenuStatusNotice();
|
|
334
|
+
|
|
335
|
+
if (isCreatingNavigationMenu) {
|
|
336
|
+
(0, _a11y.speak)((0, _i18n.__)(`Creating Navigation Menu.`));
|
|
337
|
+
}
|
|
338
|
+
|
|
339
|
+
if (createNavigationMenuIsSuccess) {
|
|
340
|
+
handleUpdateMenu(createNavigationMenuPost === null || createNavigationMenuPost === void 0 ? void 0 : createNavigationMenuPost.id, {
|
|
341
|
+
focusNavigationBlock: true
|
|
342
|
+
});
|
|
343
|
+
showNavigationMenuStatusNotice((0, _i18n.__)(`Navigation Menu successfully created.`));
|
|
344
|
+
}
|
|
345
|
+
|
|
346
|
+
if (createNavigationMenuIsError) {
|
|
347
|
+
showNavigationMenuStatusNotice((0, _i18n.__)('Failed to create Navigation Menu.'));
|
|
348
|
+
}
|
|
349
|
+
}, [createNavigationMenuStatus, createNavigationMenuError, createNavigationMenuPost === null || createNavigationMenuPost === void 0 ? void 0 : createNavigationMenuPost.id, createNavigationMenuIsError, createNavigationMenuIsSuccess, isCreatingNavigationMenu, handleUpdateMenu, hideNavigationMenuStatusNotice, showNavigationMenuStatusNotice]);
|
|
352
350
|
(0, _element.useEffect)(() => {
|
|
353
351
|
hideClassicMenuConversionNotice();
|
|
354
352
|
|
|
@@ -363,7 +361,7 @@ function Navigation(_ref) {
|
|
|
363
361
|
if (classicMenuConversionStatus === _useConvertClassicMenuToBlockMenu.CLASSIC_MENU_CONVERSION_ERROR) {
|
|
364
362
|
showClassicMenuConversionNotice((0, _i18n.__)('Classic menu import failed.'));
|
|
365
363
|
}
|
|
366
|
-
}, [classicMenuConversionStatus, classicMenuConversionError]); // Spacer block needs orientation from context. This is a patch until
|
|
364
|
+
}, [classicMenuConversionStatus, classicMenuConversionError, hideClassicMenuConversionNotice, showClassicMenuConversionNotice]); // Spacer block needs orientation from context. This is a patch until
|
|
367
365
|
// https://github.com/WordPress/gutenberg/issues/36197 is addressed.
|
|
368
366
|
|
|
369
367
|
(0, _element.useEffect)(() => {
|
|
@@ -374,7 +372,7 @@ function Navigation(_ref) {
|
|
|
374
372
|
orientation
|
|
375
373
|
});
|
|
376
374
|
}
|
|
377
|
-
}, [orientation]);
|
|
375
|
+
}, [orientation, __unstableMarkNextChangeAsNotPersistent, setAttributes]);
|
|
378
376
|
(0, _element.useEffect)(() => {
|
|
379
377
|
var _navRef$current;
|
|
380
378
|
|
|
@@ -395,7 +393,7 @@ function Navigation(_ref) {
|
|
|
395
393
|
if (overlayTextColor.color || overlayBackgroundColor.color) {
|
|
396
394
|
(0, _utils.detectColors)(subMenuElement, setDetectedOverlayColor, setDetectedOverlayBackgroundColor);
|
|
397
395
|
}
|
|
398
|
-
});
|
|
396
|
+
}, [enableContrastChecking, overlayTextColor.color, overlayBackgroundColor.color]);
|
|
399
397
|
(0, _element.useEffect)(() => {
|
|
400
398
|
if (!isSelected && !isInnerBlockSelected) {
|
|
401
399
|
hideNavigationMenuPermissionsNotice();
|
|
@@ -410,7 +408,7 @@ function Navigation(_ref) {
|
|
|
410
408
|
showNavigationMenuPermissionsNotice((0, _i18n.__)('You do not have permission to create Navigation Menus.'));
|
|
411
409
|
}
|
|
412
410
|
}
|
|
413
|
-
}, [isSelected, isInnerBlockSelected, canUserUpdateNavigationMenu, hasResolvedCanUserUpdateNavigationMenu, canUserCreateNavigationMenu, hasResolvedCanUserCreateNavigationMenu, ref]);
|
|
411
|
+
}, [isSelected, isInnerBlockSelected, canUserUpdateNavigationMenu, hasResolvedCanUserUpdateNavigationMenu, canUserCreateNavigationMenu, hasResolvedCanUserCreateNavigationMenu, ref, hideNavigationMenuPermissionsNotice, showNavigationMenuPermissionsNotice, navMenuResolvedButMissing]);
|
|
414
412
|
const hasManagePermissions = canUserCreateNavigationMenu || canUserUpdateNavigationMenu;
|
|
415
413
|
const isResponsive = 'never' !== overlayMenu;
|
|
416
414
|
const overlayMenuPreviewClasses = (0, _classnames.default)('wp-block-navigation__overlay-menu-preview', {
|
|
@@ -452,6 +450,7 @@ function Navigation(_ref) {
|
|
|
452
450
|
value: "always",
|
|
453
451
|
label: (0, _i18n.__)('Always')
|
|
454
452
|
})), hasSubmenus && (0, _element.createElement)(_element.Fragment, null, (0, _element.createElement)("h3", null, (0, _i18n.__)('Submenus')), (0, _element.createElement)(_components.ToggleControl, {
|
|
453
|
+
__nextHasNoMarginBottom: true,
|
|
455
454
|
checked: openSubmenusOnClick,
|
|
456
455
|
onChange: value => {
|
|
457
456
|
setAttributes({
|
|
@@ -464,6 +463,7 @@ function Navigation(_ref) {
|
|
|
464
463
|
},
|
|
465
464
|
label: (0, _i18n.__)('Open on click')
|
|
466
465
|
}), (0, _element.createElement)(_components.ToggleControl, {
|
|
466
|
+
__nextHasNoMarginBottom: true,
|
|
467
467
|
checked: showSubmenuIcon,
|
|
468
468
|
onChange: value => {
|
|
469
469
|
setAttributes({
|
|
@@ -507,14 +507,7 @@ function Navigation(_ref) {
|
|
|
507
507
|
}), (0, _element.createElement)(_blockEditor.ContrastChecker, {
|
|
508
508
|
backgroundColor: detectedOverlayBackgroundColor,
|
|
509
509
|
textColor: detectedOverlayColor
|
|
510
|
-
})))));
|
|
511
|
-
// - inserted via a pattern.
|
|
512
|
-
// - inserted directly via Code View (or otherwise).
|
|
513
|
-
// - from an older version of navigation block added before the block used a wp_navigation entity.
|
|
514
|
-
// Consider this state as 'unsaved' and offer an uncontrolled version of inner blocks,
|
|
515
|
-
// that automatically saves the menu as an entity when changes are made to the inner blocks.
|
|
516
|
-
|
|
517
|
-
const hasUnsavedBlocks = hasUncontrolledInnerBlocks && !isEntityAvailable;
|
|
510
|
+
})))));
|
|
518
511
|
const isManageMenusButtonDisabled = !hasManagePermissions || !hasResolvedNavigationMenus;
|
|
519
512
|
|
|
520
513
|
if (hasUnsavedBlocks && !isCreatingNavigationMenu) {
|
|
@@ -553,6 +546,7 @@ function Navigation(_ref) {
|
|
|
553
546
|
clientId: clientId,
|
|
554
547
|
createNavigationMenuIsSuccess: createNavigationMenuIsSuccess,
|
|
555
548
|
createNavigationMenuIsError: createNavigationMenuIsError,
|
|
549
|
+
currentMenuId: ref,
|
|
556
550
|
isNavigationMenuMissing: isNavigationMenuMissing,
|
|
557
551
|
isManageMenusButtonDisabled: isManageMenusButtonDisabled,
|
|
558
552
|
onCreateNew: createUntitledEmptyNavigationMenu,
|
|
@@ -621,9 +615,11 @@ function Navigation(_ref) {
|
|
|
621
615
|
}), (0, _element.createElement)(_manageMenusButton.default, {
|
|
622
616
|
disabled: isManageMenusButtonDisabled,
|
|
623
617
|
className: "wp-block-navigation-manage-menus-button"
|
|
624
|
-
})), isLoading && (0, _element.createElement)(TagName, blockProps, (0, _element.createElement)(
|
|
618
|
+
})), isLoading && (0, _element.createElement)(TagName, blockProps, (0, _element.createElement)("div", {
|
|
619
|
+
className: "wp-block-navigation__loading-indicator-container"
|
|
620
|
+
}, (0, _element.createElement)(_components.Spinner, {
|
|
625
621
|
className: "wp-block-navigation__loading-indicator"
|
|
626
|
-
})), !isLoading && (0, _element.createElement)(TagName, blockProps, (0, _element.createElement)(_responsiveWrapper.default, {
|
|
622
|
+
}))), !isLoading && (0, _element.createElement)(TagName, blockProps, (0, _element.createElement)(_responsiveWrapper.default, {
|
|
627
623
|
id: clientId,
|
|
628
624
|
onToggle: setResponsiveMenuVisibility,
|
|
629
625
|
label: (0, _i18n.__)('Menu'),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/block-library/src/navigation/edit/index.js"],"names":["Navigation","attributes","setAttributes","clientId","isSelected","className","backgroundColor","setBackgroundColor","textColor","setTextColor","overlayBackgroundColor","setOverlayBackgroundColor","overlayTextColor","setOverlayTextColor","hasSubmenuIndicatorSetting","hasColorSettings","customPlaceholder","CustomPlaceholder","openSubmenusOnClick","overlayMenu","showSubmenuIcon","templateLock","layout","justifyContent","orientation","flexWrap","hasIcon","icon","ref","setRef","postId","recursionId","hasAlreadyRendered","menus","classicMenus","showNavigationMenuStatusNotice","hideNavigationMenuStatusNotice","name","showClassicMenuConversionNotice","hideClassicMenuConversionNotice","showNavigationMenuPermissionsNotice","hideNavigationMenuPermissionsNotice","create","createNavigationMenu","status","createNavigationMenuStatus","error","createNavigationMenuError","value","createNavigationMenuPost","isPending","isCreatingNavigationMenu","isSuccess","createNavigationMenuIsSuccess","isError","createNavigationMenuIsError","createUntitledEmptyNavigationMenu","handleUpdateMenu","id","focusNavigationBlock","hasUncontrolledInnerBlocks","uncontrolledInnerBlocks","isInnerBlockSelected","innerBlocks","hasSubmenus","find","block","replaceInnerBlocks","selectBlock","__unstableMarkNextChangeAsNotPersistent","blockEditorStore","isResponsiveMenuOpen","setResponsiveMenuVisibility","overlayMenuPreview","setOverlayMenuPreview","hasResolvedNavigationMenus","isNavigationMenuResolved","isNavigationMenuMissing","navigationMenus","canUserUpdateNavigationMenu","hasResolvedCanUserUpdateNavigationMenu","canUserDeleteNavigationMenu","hasResolvedCanUserDeleteNavigationMenu","canUserCreateNavigationMenu","isResolvingCanUserCreateNavigationMenu","hasResolvedCanUserCreateNavigationMenu","navMenuResolvedButMissing","convert","convertClassicMenu","classicMenuConversionStatus","classicMenuConversionError","isConvertingClassicMenu","CLASSIC_MENU_CONVERSION_PENDING","fallbackNavigationMenus","filter","menu","sort","menuA","menuB","menuADate","Date","date","menuBDate","getTime","length","primaryMenus","classicMenu","locations","includes","slug","a","b","navRef","TagName","isPlaceholder","isEntityAvailable","isLoading","textDecoration","style","typography","hasBlockOverlay","blockProps","color","class","enableContrastChecking","Platform","OS","detectedBackgroundColor","setDetectedBackgroundColor","detectedColor","setDetectedColor","detectedOverlayBackgroundColor","setDetectedOverlayBackgroundColor","detectedOverlayColor","setDetectedOverlayColor","menuId","options","onSelectClassicMenu","navMenu","onSelectNavigationMenu","CLASSIC_MENU_CONVERSION_SUCCESS","CLASSIC_MENU_CONVERSION_ERROR","current","subMenuElement","querySelector","hasManagePermissions","isResponsive","overlayMenuPreviewClasses","open","colorGradientSettings","stylingInspectorControls","close","colorValue","label","onColorChange","resetAllFilter","hasUnsavedBlocks","isManageMenusButtonDisabled","PlaceholderComponent","Placeholder","deletedMenuTitle"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tuseState,\n\tuseEffect,\n\tuseRef,\n\tPlatform,\n\tuseMemo,\n} from '@wordpress/element';\nimport {\n\tInspectorControls,\n\tuseBlockProps,\n\t__experimentalRecursionProvider as RecursionProvider,\n\t__experimentalUseHasRecursion as useHasRecursion,\n\tstore as blockEditorStore,\n\twithColors,\n\tContrastChecker,\n\tgetColorClassName,\n\tWarning,\n\t__experimentalColorGradientSettingsDropdown as ColorGradientSettingsDropdown,\n\t__experimentalUseBlockOverlayActive as useBlockOverlayActive,\n\t__experimentalUseMultipleOriginColorsAndGradients as useMultipleOriginColorsAndGradients,\n} from '@wordpress/block-editor';\nimport { EntityProvider } from '@wordpress/core-data';\n\nimport { useDispatch } from '@wordpress/data';\nimport {\n\tPanelBody,\n\tToggleControl,\n\t__experimentalToggleGroupControl as ToggleGroupControl,\n\t__experimentalToggleGroupControlOption as ToggleGroupControlOption,\n\tButton,\n\tSpinner,\n} from '@wordpress/components';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { speak } from '@wordpress/a11y';\nimport { createBlock } from '@wordpress/blocks';\nimport { close, Icon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport useNavigationMenu from '../use-navigation-menu';\nimport useNavigationEntities from '../use-navigation-entities';\nimport Placeholder from './placeholder';\nimport ResponsiveWrapper from './responsive-wrapper';\nimport NavigationInnerBlocks from './inner-blocks';\nimport NavigationMenuNameControl from './navigation-menu-name-control';\nimport UnsavedInnerBlocks from './unsaved-inner-blocks';\nimport NavigationMenuDeleteControl from './navigation-menu-delete-control';\nimport useNavigationNotice from './use-navigation-notice';\nimport OverlayMenuIcon from './overlay-menu-icon';\nimport OverlayMenuPreview from './overlay-menu-preview';\nimport useConvertClassicToBlockMenu, {\n\tCLASSIC_MENU_CONVERSION_ERROR,\n\tCLASSIC_MENU_CONVERSION_PENDING,\n\tCLASSIC_MENU_CONVERSION_SUCCESS,\n} from './use-convert-classic-menu-to-block-menu';\nimport useCreateNavigationMenu from './use-create-navigation-menu';\nimport { useInnerBlocks } from './use-inner-blocks';\nimport { detectColors } from './utils';\nimport ManageMenusButton from './manage-menus-button';\nimport MenuInspectorControls from './menu-inspector-controls';\nimport DeletedNavigationWarning from './deleted-navigation-warning';\n\nfunction Navigation( {\n\tattributes,\n\tsetAttributes,\n\tclientId,\n\tisSelected,\n\tclassName,\n\tbackgroundColor,\n\tsetBackgroundColor,\n\ttextColor,\n\tsetTextColor,\n\toverlayBackgroundColor,\n\tsetOverlayBackgroundColor,\n\toverlayTextColor,\n\tsetOverlayTextColor,\n\n\t// These props are used by the navigation editor to override specific\n\t// navigation block settings.\n\thasSubmenuIndicatorSetting = true,\n\thasColorSettings = true,\n\tcustomPlaceholder: CustomPlaceholder = null,\n} ) {\n\tconst {\n\t\topenSubmenusOnClick,\n\t\toverlayMenu,\n\t\tshowSubmenuIcon,\n\t\ttemplateLock,\n\t\tlayout: {\n\t\t\tjustifyContent,\n\t\t\torientation = 'horizontal',\n\t\t\tflexWrap = 'wrap',\n\t\t} = {},\n\t\thasIcon,\n\t\ticon = 'handle',\n\t} = attributes;\n\n\tconst ref = attributes.ref;\n\n\tconst setRef = ( postId ) => {\n\t\tsetAttributes( { ref: postId } );\n\t};\n\n\tconst recursionId = `navigationMenu/${ ref }`;\n\tconst hasAlreadyRendered = useHasRecursion( recursionId );\n\n\t// Preload classic menus, so that they don't suddenly pop-in when viewing\n\t// the Select Menu dropdown.\n\tconst { menus: classicMenus } = useNavigationEntities();\n\n\tconst [ showNavigationMenuStatusNotice, hideNavigationMenuStatusNotice ] =\n\t\tuseNavigationNotice( {\n\t\t\tname: 'block-library/core/navigation/status',\n\t\t} );\n\n\tconst [ showClassicMenuConversionNotice, hideClassicMenuConversionNotice ] =\n\t\tuseNavigationNotice( {\n\t\t\tname: 'block-library/core/navigation/classic-menu-conversion',\n\t\t} );\n\n\tconst [\n\t\tshowNavigationMenuPermissionsNotice,\n\t\thideNavigationMenuPermissionsNotice,\n\t] = useNavigationNotice( {\n\t\tname: 'block-library/core/navigation/permissions/update',\n\t} );\n\n\tconst {\n\t\tcreate: createNavigationMenu,\n\t\tstatus: createNavigationMenuStatus,\n\t\terror: createNavigationMenuError,\n\t\tvalue: createNavigationMenuPost,\n\t\tisPending: isCreatingNavigationMenu,\n\t\tisSuccess: createNavigationMenuIsSuccess,\n\t\tisError: createNavigationMenuIsError,\n\t} = useCreateNavigationMenu( clientId );\n\n\tconst createUntitledEmptyNavigationMenu = () => {\n\t\tcreateNavigationMenu( '' );\n\t};\n\n\tuseEffect( () => {\n\t\thideNavigationMenuStatusNotice();\n\n\t\tif ( isCreatingNavigationMenu ) {\n\t\t\tspeak( __( `Creating Navigation Menu.` ) );\n\t\t}\n\n\t\tif ( createNavigationMenuIsSuccess ) {\n\t\t\thandleUpdateMenu( createNavigationMenuPost.id, {\n\t\t\t\tfocusNavigationBlock: true,\n\t\t\t} );\n\n\t\t\tshowNavigationMenuStatusNotice(\n\t\t\t\t__( `Navigation Menu successfully created.` )\n\t\t\t);\n\t\t}\n\n\t\tif ( createNavigationMenuIsError ) {\n\t\t\tshowNavigationMenuStatusNotice(\n\t\t\t\t__( 'Failed to create Navigation Menu.' )\n\t\t\t);\n\t\t}\n\t}, [\n\t\tcreateNavigationMenuStatus,\n\t\tcreateNavigationMenuError,\n\t\tcreateNavigationMenuPost,\n\t] );\n\n\tconst {\n\t\thasUncontrolledInnerBlocks,\n\t\tuncontrolledInnerBlocks,\n\t\tisInnerBlockSelected,\n\t\tinnerBlocks,\n\t} = useInnerBlocks( clientId );\n\n\tconst hasSubmenus = !! innerBlocks.find(\n\t\t( block ) => block.name === 'core/navigation-submenu'\n\t);\n\n\tconst {\n\t\treplaceInnerBlocks,\n\t\tselectBlock,\n\t\t__unstableMarkNextChangeAsNotPersistent,\n\t} = useDispatch( blockEditorStore );\n\n\tconst [ isResponsiveMenuOpen, setResponsiveMenuVisibility ] =\n\t\tuseState( false );\n\n\tconst [ overlayMenuPreview, setOverlayMenuPreview ] = useState( false );\n\n\tconst {\n\t\thasResolvedNavigationMenus,\n\t\tisNavigationMenuResolved,\n\t\tisNavigationMenuMissing,\n\t\tnavigationMenus,\n\t\tcanUserUpdateNavigationMenu,\n\t\thasResolvedCanUserUpdateNavigationMenu,\n\t\tcanUserDeleteNavigationMenu,\n\t\thasResolvedCanUserDeleteNavigationMenu,\n\t\tcanUserCreateNavigationMenu,\n\t\tisResolvingCanUserCreateNavigationMenu,\n\t\thasResolvedCanUserCreateNavigationMenu,\n\t} = useNavigationMenu( ref );\n\n\tconst navMenuResolvedButMissing =\n\t\thasResolvedNavigationMenus && isNavigationMenuMissing;\n\n\tconst {\n\t\tconvert: convertClassicMenu,\n\t\tstatus: classicMenuConversionStatus,\n\t\terror: classicMenuConversionError,\n\t} = useConvertClassicToBlockMenu( clientId );\n\n\tconst isConvertingClassicMenu =\n\t\tclassicMenuConversionStatus === CLASSIC_MENU_CONVERSION_PENDING;\n\n\t// Only autofallback to published menus.\n\tconst fallbackNavigationMenus = useMemo(\n\t\t() =>\n\t\t\tnavigationMenus\n\t\t\t\t?.filter( ( menu ) => menu.status === 'publish' )\n\t\t\t\t?.sort( ( menuA, menuB ) => {\n\t\t\t\t\tconst menuADate = new Date( menuA.date );\n\t\t\t\t\tconst menuBDate = new Date( menuB.date );\n\t\t\t\t\treturn menuADate.getTime() < menuBDate.getTime();\n\t\t\t\t} ),\n\t\t[ navigationMenus ]\n\t);\n\n\t// Attempt to retrieve and prioritize any existing navigation menu unless:\n\t// - the are uncontrolled inner blocks already present in the block.\n\t// - the user is creating a new menu.\n\t// - there are no menus to choose from.\n\t// This attempts to pick the first menu if there is a single Navigation Post. If more\n\t// than 1 exists then use the most recent.\n\t// The aim is for the block to \"just work\" from a user perspective using existing data.\n\tuseEffect( () => {\n\t\tif (\n\t\t\thasUncontrolledInnerBlocks ||\n\t\t\tisCreatingNavigationMenu ||\n\t\t\tref ||\n\t\t\t! fallbackNavigationMenus?.length\n\t\t) {\n\t\t\treturn;\n\t\t}\n\n\t\t/**\n\t\t * This fallback displays (both in editor and on front)\n\t\t * a list of pages only if no menu (user assigned or\n\t\t * automatically picked) is available.\n\t\t * The fallback should not request a save (entity dirty state)\n\t\t * nor to be undoable, hence why it is marked as non persistent\n\t\t */\n\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\tsetRef( fallbackNavigationMenus[ 0 ].id );\n\t}, [\n\t\tref,\n\t\tisCreatingNavigationMenu,\n\t\tfallbackNavigationMenus,\n\t\thasUncontrolledInnerBlocks,\n\t] );\n\n\tuseEffect( () => {\n\t\tif (\n\t\t\t! hasResolvedNavigationMenus ||\n\t\t\tisConvertingClassicMenu ||\n\t\t\tfallbackNavigationMenus?.length > 0 ||\n\t\t\t! classicMenus?.length\n\t\t) {\n\t\t\treturn;\n\t\t}\n\n\t\t// If there's non fallback navigation menus and\n\t\t// a classic menu with a `primary` location or slug,\n\t\t// then create a new navigation menu based on it.\n\t\t// Otherwise, use the most recently created classic menu.\n\t\tconst primaryMenus = classicMenus.filter(\n\t\t\t( classicMenu ) =>\n\t\t\t\tclassicMenu.locations.includes( 'primary' ) ||\n\t\t\t\tclassicMenu.slug === 'primary'\n\t\t);\n\n\t\tif ( primaryMenus.length ) {\n\t\t\tconvertClassicMenu(\n\t\t\t\tprimaryMenus[ 0 ].id,\n\t\t\t\tprimaryMenus[ 0 ].name,\n\t\t\t\t'publish'\n\t\t\t);\n\t\t} else {\n\t\t\tclassicMenus.sort( ( a, b ) => {\n\t\t\t\treturn b.id - a.id;\n\t\t\t} );\n\t\t\tconvertClassicMenu(\n\t\t\t\tclassicMenus[ 0 ].id,\n\t\t\t\tclassicMenus[ 0 ].name,\n\t\t\t\t'publish'\n\t\t\t);\n\t\t}\n\t}, [ hasResolvedNavigationMenus ] );\n\n\tconst navRef = useRef();\n\n\t// The standard HTML5 tag for the block wrapper.\n\tconst TagName = 'nav';\n\n\t// \"placeholder\" shown if:\n\t// - there is no ref attribute pointing to a Navigation Post.\n\t// - there is no classic menu conversion process in progress.\n\t// - there is no menu creation process in progress.\n\t// - there are no uncontrolled blocks.\n\tconst isPlaceholder =\n\t\t! ref &&\n\t\t! isCreatingNavigationMenu &&\n\t\t! isConvertingClassicMenu &&\n\t\thasResolvedNavigationMenus &&\n\t\tclassicMenus?.length === 0 &&\n\t\t! hasUncontrolledInnerBlocks;\n\n\tuseEffect( () => {\n\t\tif ( isPlaceholder ) {\n\t\t\t/**\n\t\t\t * this fallback only displays (both in editor and on front)\n\t\t\t * the list of pages block if no menu is available as a fallback.\n\t\t\t * We don't want the fallback to request a save,\n\t\t\t * nor to be undoable, hence we mark it non persistent.\n\t\t\t */\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\treplaceInnerBlocks( clientId, [ createBlock( 'core/page-list' ) ] );\n\t\t}\n\t}, [ clientId, isPlaceholder, ref ] );\n\n\tconst isEntityAvailable =\n\t\t! isNavigationMenuMissing && isNavigationMenuResolved;\n\n\t// \"loading\" state:\n\t// - there is a menu creation process in progress.\n\t// - there is a classic menu conversion process in progress.\n\t// OR:\n\t// - there is a ref attribute pointing to a Navigation Post\n\t// - the Navigation Post isn't available (hasn't resolved) yet.\n\tconst isLoading =\n\t\t! hasResolvedNavigationMenus ||\n\t\tisCreatingNavigationMenu ||\n\t\tisConvertingClassicMenu ||\n\t\t!! ( ref && ! isEntityAvailable && ! isConvertingClassicMenu );\n\n\tconst textDecoration = attributes.style?.typography?.textDecoration;\n\n\tconst hasBlockOverlay = useBlockOverlayActive( clientId );\n\tconst blockProps = useBlockProps( {\n\t\tref: navRef,\n\t\tclassName: classnames( className, {\n\t\t\t'items-justified-right': justifyContent === 'right',\n\t\t\t'items-justified-space-between': justifyContent === 'space-between',\n\t\t\t'items-justified-left': justifyContent === 'left',\n\t\t\t'items-justified-center': justifyContent === 'center',\n\t\t\t'is-vertical': orientation === 'vertical',\n\t\t\t'no-wrap': flexWrap === 'nowrap',\n\t\t\t'is-responsive': 'never' !== overlayMenu,\n\t\t\t'has-text-color': !! textColor.color || !! textColor?.class,\n\t\t\t[ getColorClassName( 'color', textColor?.slug ) ]:\n\t\t\t\t!! textColor?.slug,\n\t\t\t'has-background': !! backgroundColor.color || backgroundColor.class,\n\t\t\t[ getColorClassName( 'background-color', backgroundColor?.slug ) ]:\n\t\t\t\t!! backgroundColor?.slug,\n\t\t\t[ `has-text-decoration-${ textDecoration }` ]: textDecoration,\n\t\t\t'block-editor-block-content-overlay': hasBlockOverlay,\n\t\t} ),\n\t\tstyle: {\n\t\t\tcolor: ! textColor?.slug && textColor?.color,\n\t\t\tbackgroundColor: ! backgroundColor?.slug && backgroundColor?.color,\n\t\t},\n\t} );\n\n\t// Turn on contrast checker for web only since it's not supported on mobile yet.\n\tconst enableContrastChecking = Platform.OS === 'web';\n\n\tconst [ detectedBackgroundColor, setDetectedBackgroundColor ] = useState();\n\tconst [ detectedColor, setDetectedColor ] = useState();\n\tconst [\n\t\tdetectedOverlayBackgroundColor,\n\t\tsetDetectedOverlayBackgroundColor,\n\t] = useState();\n\tconst [ detectedOverlayColor, setDetectedOverlayColor ] = useState();\n\n\tconst handleUpdateMenu = (\n\t\tmenuId,\n\t\toptions = { focusNavigationBlock: false }\n\t) => {\n\t\tconst { focusNavigationBlock } = options;\n\t\tsetRef( menuId );\n\t\tif ( focusNavigationBlock ) {\n\t\t\tselectBlock( clientId );\n\t\t}\n\t};\n\n\tconst onSelectClassicMenu = async ( classicMenu ) => {\n\t\tconst navMenu = await convertClassicMenu(\n\t\t\tclassicMenu.id,\n\t\t\tclassicMenu.name,\n\t\t\t'draft'\n\t\t);\n\t\tif ( navMenu ) {\n\t\t\thandleUpdateMenu( navMenu.id, {\n\t\t\t\tfocusNavigationBlock: true,\n\t\t\t} );\n\t\t}\n\t};\n\n\tconst onSelectNavigationMenu = ( menuId ) => {\n\t\thandleUpdateMenu( menuId );\n\t};\n\n\tuseEffect( () => {\n\t\thideClassicMenuConversionNotice();\n\t\tif ( classicMenuConversionStatus === CLASSIC_MENU_CONVERSION_PENDING ) {\n\t\t\tspeak( __( 'Classic menu importing.' ) );\n\t\t}\n\n\t\tif ( classicMenuConversionStatus === CLASSIC_MENU_CONVERSION_SUCCESS ) {\n\t\t\tshowClassicMenuConversionNotice(\n\t\t\t\t__( 'Classic menu imported successfully.' )\n\t\t\t);\n\t\t}\n\n\t\tif ( classicMenuConversionStatus === CLASSIC_MENU_CONVERSION_ERROR ) {\n\t\t\tshowClassicMenuConversionNotice(\n\t\t\t\t__( 'Classic menu import failed.' )\n\t\t\t);\n\t\t}\n\t}, [ classicMenuConversionStatus, classicMenuConversionError ] );\n\n\t// Spacer block needs orientation from context. This is a patch until\n\t// https://github.com/WordPress/gutenberg/issues/36197 is addressed.\n\tuseEffect( () => {\n\t\tif ( orientation ) {\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\tsetAttributes( { orientation } );\n\t\t}\n\t}, [ orientation ] );\n\n\tuseEffect( () => {\n\t\tif ( ! enableContrastChecking ) {\n\t\t\treturn;\n\t\t}\n\t\tdetectColors(\n\t\t\tnavRef.current,\n\t\t\tsetDetectedColor,\n\t\t\tsetDetectedBackgroundColor\n\t\t);\n\n\t\tconst subMenuElement = navRef.current?.querySelector(\n\t\t\t'[data-type=\"core/navigation-submenu\"] [data-type=\"core/navigation-link\"]'\n\t\t);\n\n\t\tif ( ! subMenuElement ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Only detect submenu overlay colors if they have previously been explicitly set.\n\t\t// This avoids the contrast checker from reporting on inherited submenu colors and\n\t\t// showing the contrast warning twice.\n\t\tif ( overlayTextColor.color || overlayBackgroundColor.color ) {\n\t\t\tdetectColors(\n\t\t\t\tsubMenuElement,\n\t\t\t\tsetDetectedOverlayColor,\n\t\t\t\tsetDetectedOverlayBackgroundColor\n\t\t\t);\n\t\t}\n\t} );\n\n\tuseEffect( () => {\n\t\tif ( ! isSelected && ! isInnerBlockSelected ) {\n\t\t\thideNavigationMenuPermissionsNotice();\n\t\t}\n\n\t\tif ( isSelected || isInnerBlockSelected ) {\n\t\t\tif (\n\t\t\t\tref &&\n\t\t\t\t! navMenuResolvedButMissing &&\n\t\t\t\thasResolvedCanUserUpdateNavigationMenu &&\n\t\t\t\t! canUserUpdateNavigationMenu\n\t\t\t) {\n\t\t\t\tshowNavigationMenuPermissionsNotice(\n\t\t\t\t\t__(\n\t\t\t\t\t\t'You do not have permission to edit this Menu. Any changes made will not be saved.'\n\t\t\t\t\t)\n\t\t\t\t);\n\t\t\t}\n\n\t\t\tif (\n\t\t\t\t! ref &&\n\t\t\t\thasResolvedCanUserCreateNavigationMenu &&\n\t\t\t\t! canUserCreateNavigationMenu\n\t\t\t) {\n\t\t\t\tshowNavigationMenuPermissionsNotice(\n\t\t\t\t\t__(\n\t\t\t\t\t\t'You do not have permission to create Navigation Menus.'\n\t\t\t\t\t)\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\t}, [\n\t\tisSelected,\n\t\tisInnerBlockSelected,\n\t\tcanUserUpdateNavigationMenu,\n\t\thasResolvedCanUserUpdateNavigationMenu,\n\t\tcanUserCreateNavigationMenu,\n\t\thasResolvedCanUserCreateNavigationMenu,\n\t\tref,\n\t] );\n\n\tconst hasManagePermissions =\n\t\tcanUserCreateNavigationMenu || canUserUpdateNavigationMenu;\n\tconst isResponsive = 'never' !== overlayMenu;\n\n\tconst overlayMenuPreviewClasses = classnames(\n\t\t'wp-block-navigation__overlay-menu-preview',\n\t\t{ open: overlayMenuPreview }\n\t);\n\n\tconst colorGradientSettings = useMultipleOriginColorsAndGradients();\n\tconst stylingInspectorControls = (\n\t\t<>\n\t\t\t<InspectorControls>\n\t\t\t\t{ hasSubmenuIndicatorSetting && (\n\t\t\t\t\t<PanelBody title={ __( 'Display' ) }>\n\t\t\t\t\t\t{ isResponsive && (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\tclassName={ overlayMenuPreviewClasses }\n\t\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\t\tsetOverlayMenuPreview(\n\t\t\t\t\t\t\t\t\t\t\t! overlayMenuPreview\n\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ hasIcon && (\n\t\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t\t<OverlayMenuIcon icon={ icon } />\n\t\t\t\t\t\t\t\t\t\t\t<Icon icon={ close } />\n\t\t\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t{ ! hasIcon && (\n\t\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t\t<span>{ __( 'Menu' ) }</span>\n\t\t\t\t\t\t\t\t\t\t\t<span>{ __( 'Close' ) }</span>\n\t\t\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t\t{ overlayMenuPreview && (\n\t\t\t\t\t\t\t\t\t<OverlayMenuPreview\n\t\t\t\t\t\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\t\t\t\t\t\thasIcon={ hasIcon }\n\t\t\t\t\t\t\t\t\t\ticon={ icon }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t<h3>{ __( 'Overlay Menu' ) }</h3>\n\t\t\t\t\t\t<ToggleGroupControl\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\tlabel={ __( 'Configure overlay menu' ) }\n\t\t\t\t\t\t\tvalue={ overlayMenu }\n\t\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t\t'Collapses the navigation options in a menu icon opening an overlay.'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\tsetAttributes( { overlayMenu: value } )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tisBlock\n\t\t\t\t\t\t\thideLabelFromVision\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\t\tvalue=\"never\"\n\t\t\t\t\t\t\t\tlabel={ __( 'Off' ) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\t\tvalue=\"mobile\"\n\t\t\t\t\t\t\t\tlabel={ __( 'Mobile' ) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\t\tvalue=\"always\"\n\t\t\t\t\t\t\t\tlabel={ __( 'Always' ) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</ToggleGroupControl>\n\t\t\t\t\t\t{ hasSubmenus && (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t<h3>{ __( 'Submenus' ) }</h3>\n\t\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t\tchecked={ openSubmenusOnClick }\n\t\t\t\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\t\topenSubmenusOnClick: value,\n\t\t\t\t\t\t\t\t\t\t\t...( value && {\n\t\t\t\t\t\t\t\t\t\t\t\tshowSubmenuIcon: true,\n\t\t\t\t\t\t\t\t\t\t\t} ), // Make sure arrows are shown when we toggle this on.\n\t\t\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Open on click' ) }\n\t\t\t\t\t\t\t\t/>\n\n\t\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t\tchecked={ showSubmenuIcon }\n\t\t\t\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\t\tshowSubmenuIcon: value,\n\t\t\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\tdisabled={ attributes.openSubmenusOnClick }\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Show arrow' ) }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</PanelBody>\n\t\t\t\t) }\n\t\t\t</InspectorControls>\n\t\t\t<InspectorControls group=\"color\">\n\t\t\t\t{ hasColorSettings && (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<ColorGradientSettingsDropdown\n\t\t\t\t\t\t\t__experimentalIsRenderedInSidebar\n\t\t\t\t\t\t\tsettings={ [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tcolorValue: textColor.color,\n\t\t\t\t\t\t\t\t\tlabel: __( 'Text' ),\n\t\t\t\t\t\t\t\t\tonColorChange: setTextColor,\n\t\t\t\t\t\t\t\t\tresetAllFilter: () => setTextColor(),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tcolorValue: backgroundColor.color,\n\t\t\t\t\t\t\t\t\tlabel: __( 'Background' ),\n\t\t\t\t\t\t\t\t\tonColorChange: setBackgroundColor,\n\t\t\t\t\t\t\t\t\tresetAllFilter: () => setBackgroundColor(),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tcolorValue: overlayTextColor.color,\n\t\t\t\t\t\t\t\t\tlabel: __( 'Submenu & overlay text' ),\n\t\t\t\t\t\t\t\t\tonColorChange: setOverlayTextColor,\n\t\t\t\t\t\t\t\t\tresetAllFilter: () => setOverlayTextColor(),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tcolorValue: overlayBackgroundColor.color,\n\t\t\t\t\t\t\t\t\tlabel: __( 'Submenu & overlay background' ),\n\t\t\t\t\t\t\t\t\tonColorChange: setOverlayBackgroundColor,\n\t\t\t\t\t\t\t\t\tresetAllFilter: () =>\n\t\t\t\t\t\t\t\t\t\tsetOverlayBackgroundColor(),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t] }\n\t\t\t\t\t\t\tpanelId={ clientId }\n\t\t\t\t\t\t\t{ ...colorGradientSettings }\n\t\t\t\t\t\t\tgradients={ [] }\n\t\t\t\t\t\t\tdisableCustomGradients={ true }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t{ enableContrastChecking && (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t<ContrastChecker\n\t\t\t\t\t\t\t\t\tbackgroundColor={ detectedBackgroundColor }\n\t\t\t\t\t\t\t\t\ttextColor={ detectedColor }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t<ContrastChecker\n\t\t\t\t\t\t\t\t\tbackgroundColor={\n\t\t\t\t\t\t\t\t\t\tdetectedOverlayBackgroundColor\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\ttextColor={ detectedOverlayColor }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</>\n\t\t\t\t) }\n\t\t\t</InspectorControls>\n\t\t</>\n\t);\n\n\t// If the block has inner blocks, but no menu id, then these blocks are either:\n\t// - inserted via a pattern.\n\t// - inserted directly via Code View (or otherwise).\n\t// - from an older version of navigation block added before the block used a wp_navigation entity.\n\t// Consider this state as 'unsaved' and offer an uncontrolled version of inner blocks,\n\t// that automatically saves the menu as an entity when changes are made to the inner blocks.\n\tconst hasUnsavedBlocks = hasUncontrolledInnerBlocks && ! isEntityAvailable;\n\n\tconst isManageMenusButtonDisabled =\n\t\t! hasManagePermissions || ! hasResolvedNavigationMenus;\n\n\tif ( hasUnsavedBlocks && ! isCreatingNavigationMenu ) {\n\t\treturn (\n\t\t\t<TagName { ...blockProps }>\n\t\t\t\t<MenuInspectorControls\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\tcreateNavigationMenuIsSuccess={\n\t\t\t\t\t\tcreateNavigationMenuIsSuccess\n\t\t\t\t\t}\n\t\t\t\t\tcreateNavigationMenuIsError={ createNavigationMenuIsError }\n\t\t\t\t\tcurrentMenuId={ ref }\n\t\t\t\t\tisNavigationMenuMissing={ isNavigationMenuMissing }\n\t\t\t\t\tisManageMenusButtonDisabled={ isManageMenusButtonDisabled }\n\t\t\t\t\tonCreateNew={ createUntitledEmptyNavigationMenu }\n\t\t\t\t\tonSelectClassicMenu={ onSelectClassicMenu }\n\t\t\t\t\tonSelectNavigationMenu={ onSelectNavigationMenu }\n\t\t\t\t\tisLoading={ isLoading }\n\t\t\t\t/>\n\t\t\t\t{ stylingInspectorControls }\n\t\t\t\t<ResponsiveWrapper\n\t\t\t\t\tid={ clientId }\n\t\t\t\t\tonToggle={ setResponsiveMenuVisibility }\n\t\t\t\t\tisOpen={ isResponsiveMenuOpen }\n\t\t\t\t\thasIcon={ hasIcon }\n\t\t\t\t\ticon={ icon }\n\t\t\t\t\tisResponsive={ 'never' !== overlayMenu }\n\t\t\t\t\tisHiddenByDefault={ 'always' === overlayMenu }\n\t\t\t\t\toverlayBackgroundColor={ overlayBackgroundColor }\n\t\t\t\t\toverlayTextColor={ overlayTextColor }\n\t\t\t\t>\n\t\t\t\t\t<UnsavedInnerBlocks\n\t\t\t\t\t\tcreateNavigationMenu={ createNavigationMenu }\n\t\t\t\t\t\tblocks={ uncontrolledInnerBlocks }\n\t\t\t\t\t\thasSelection={ isSelected || isInnerBlockSelected }\n\t\t\t\t\t/>\n\t\t\t\t</ResponsiveWrapper>\n\t\t\t</TagName>\n\t\t);\n\t}\n\n\t// Show a warning if the selected menu is no longer available.\n\t// TODO - the user should be able to select a new one?\n\tif ( ref && isNavigationMenuMissing ) {\n\t\treturn (\n\t\t\t<TagName { ...blockProps }>\n\t\t\t\t<MenuInspectorControls\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\tcreateNavigationMenuIsSuccess={\n\t\t\t\t\t\tcreateNavigationMenuIsSuccess\n\t\t\t\t\t}\n\t\t\t\t\tcreateNavigationMenuIsError={ createNavigationMenuIsError }\n\t\t\t\t\tisNavigationMenuMissing={ isNavigationMenuMissing }\n\t\t\t\t\tisManageMenusButtonDisabled={ isManageMenusButtonDisabled }\n\t\t\t\t\tonCreateNew={ createUntitledEmptyNavigationMenu }\n\t\t\t\t\tonSelectClassicMenu={ onSelectClassicMenu }\n\t\t\t\t\tonSelectNavigationMenu={ onSelectNavigationMenu }\n\t\t\t\t\tisLoading={ isLoading }\n\t\t\t\t/>\n\t\t\t\t<DeletedNavigationWarning\n\t\t\t\t\tonCreateNew={ createUntitledEmptyNavigationMenu }\n\t\t\t\t/>\n\t\t\t</TagName>\n\t\t);\n\t}\n\n\tif ( isEntityAvailable && hasAlreadyRendered ) {\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t<Warning>\n\t\t\t\t\t{ __( 'Block cannot be rendered inside itself.' ) }\n\t\t\t\t</Warning>\n\t\t\t</div>\n\t\t);\n\t}\n\n\tconst PlaceholderComponent = CustomPlaceholder\n\t\t? CustomPlaceholder\n\t\t: Placeholder;\n\n\t/**\n\t * Historically the navigation block has supported custom placeholders.\n\t * Even though the current UX tries as hard as possible not to\n\t * end up in a placeholder state, the block continues to support\n\t * this extensibility point, via a CustomPlaceholder.\n\t * When CustomPlaceholder is present it becomes the default fallback\n\t * for an empty navigation block, instead of the default fallbacks.\n\t *\n\t */\n\n\tif ( isPlaceholder && CustomPlaceholder ) {\n\t\treturn (\n\t\t\t<TagName { ...blockProps }>\n\t\t\t\t<PlaceholderComponent\n\t\t\t\t\tisSelected={ isSelected }\n\t\t\t\t\tcurrentMenuId={ ref }\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\tcanUserCreateNavigationMenu={ canUserCreateNavigationMenu }\n\t\t\t\t\tisResolvingCanUserCreateNavigationMenu={\n\t\t\t\t\t\tisResolvingCanUserCreateNavigationMenu\n\t\t\t\t\t}\n\t\t\t\t\tonSelectNavigationMenu={ onSelectNavigationMenu }\n\t\t\t\t\tonSelectClassicMenu={ onSelectClassicMenu }\n\t\t\t\t\tonCreateEmpty={ createUntitledEmptyNavigationMenu }\n\t\t\t\t/>\n\t\t\t</TagName>\n\t\t);\n\t}\n\n\treturn (\n\t\t<EntityProvider kind=\"postType\" type=\"wp_navigation\" id={ ref }>\n\t\t\t<RecursionProvider uniqueId={ recursionId }>\n\t\t\t\t<MenuInspectorControls\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\tcreateNavigationMenuIsSuccess={\n\t\t\t\t\t\tcreateNavigationMenuIsSuccess\n\t\t\t\t\t}\n\t\t\t\t\tcreateNavigationMenuIsError={ createNavigationMenuIsError }\n\t\t\t\t\tcurrentMenuId={ ref }\n\t\t\t\t\tisNavigationMenuMissing={ isNavigationMenuMissing }\n\t\t\t\t\tisManageMenusButtonDisabled={ isManageMenusButtonDisabled }\n\t\t\t\t\tonCreateNew={ createUntitledEmptyNavigationMenu }\n\t\t\t\t\tonSelectClassicMenu={ onSelectClassicMenu }\n\t\t\t\t\tonSelectNavigationMenu={ onSelectNavigationMenu }\n\t\t\t\t\tisLoading={ isLoading }\n\t\t\t\t/>\n\t\t\t\t{ stylingInspectorControls }\n\t\t\t\t{ isEntityAvailable && (\n\t\t\t\t\t<InspectorControls group=\"advanced\">\n\t\t\t\t\t\t{ hasResolvedCanUserUpdateNavigationMenu &&\n\t\t\t\t\t\t\tcanUserUpdateNavigationMenu && (\n\t\t\t\t\t\t\t\t<NavigationMenuNameControl />\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ hasResolvedCanUserDeleteNavigationMenu &&\n\t\t\t\t\t\t\tcanUserDeleteNavigationMenu && (\n\t\t\t\t\t\t\t\t<NavigationMenuDeleteControl\n\t\t\t\t\t\t\t\t\tonDelete={ ( deletedMenuTitle = '' ) => {\n\t\t\t\t\t\t\t\t\t\treplaceInnerBlocks( clientId, [] );\n\t\t\t\t\t\t\t\t\t\tshowNavigationMenuStatusNotice(\n\t\t\t\t\t\t\t\t\t\t\tsprintf(\n\t\t\t\t\t\t\t\t\t\t\t\t// translators: %s: the name of a menu (e.g. Header navigation).\n\t\t\t\t\t\t\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t\t\t\t\t\t\t'Navigation menu %s successfully deleted.'\n\t\t\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t\t\t\tdeletedMenuTitle\n\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t<ManageMenusButton\n\t\t\t\t\t\t\tdisabled={ isManageMenusButtonDisabled }\n\t\t\t\t\t\t\tclassName=\"wp-block-navigation-manage-menus-button\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t</InspectorControls>\n\t\t\t\t) }\n\n\t\t\t\t{ isLoading && (\n\t\t\t\t\t<TagName { ...blockProps }>\n\t\t\t\t\t\t<Spinner className=\"wp-block-navigation__loading-indicator\" />\n\t\t\t\t\t</TagName>\n\t\t\t\t) }\n\n\t\t\t\t{ ! isLoading && (\n\t\t\t\t\t<TagName { ...blockProps }>\n\t\t\t\t\t\t<ResponsiveWrapper\n\t\t\t\t\t\t\tid={ clientId }\n\t\t\t\t\t\t\tonToggle={ setResponsiveMenuVisibility }\n\t\t\t\t\t\t\tlabel={ __( 'Menu' ) }\n\t\t\t\t\t\t\thasIcon={ hasIcon }\n\t\t\t\t\t\t\ticon={ icon }\n\t\t\t\t\t\t\tisOpen={ isResponsiveMenuOpen }\n\t\t\t\t\t\t\tisResponsive={ isResponsive }\n\t\t\t\t\t\t\tisHiddenByDefault={ 'always' === overlayMenu }\n\t\t\t\t\t\t\toverlayBackgroundColor={ overlayBackgroundColor }\n\t\t\t\t\t\t\toverlayTextColor={ overlayTextColor }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ isEntityAvailable && (\n\t\t\t\t\t\t\t\t<NavigationInnerBlocks\n\t\t\t\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\t\t\t\thasCustomPlaceholder={\n\t\t\t\t\t\t\t\t\t\t!! CustomPlaceholder\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\ttemplateLock={ templateLock }\n\t\t\t\t\t\t\t\t\torientation={ orientation }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</ResponsiveWrapper>\n\t\t\t\t\t</TagName>\n\t\t\t\t) }\n\t\t\t</RecursionProvider>\n\t\t</EntityProvider>\n\t);\n}\n\nexport default withColors(\n\t{ textColor: 'color' },\n\t{ backgroundColor: 'color' },\n\t{ overlayBackgroundColor: 'color' },\n\t{ overlayTextColor: 'color' }\n)( Navigation );\n"]}
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/navigation/edit/index.js"],"names":["Navigation","attributes","setAttributes","clientId","isSelected","className","backgroundColor","setBackgroundColor","textColor","setTextColor","overlayBackgroundColor","setOverlayBackgroundColor","overlayTextColor","setOverlayTextColor","hasSubmenuIndicatorSetting","hasColorSettings","customPlaceholder","CustomPlaceholder","openSubmenusOnClick","overlayMenu","showSubmenuIcon","templateLock","layout","justifyContent","orientation","flexWrap","hasIcon","icon","ref","setRef","postId","recursionId","hasAlreadyRendered","menus","classicMenus","hasResolvedMenus","hasResolvedClassicMenus","showNavigationMenuStatusNotice","hideNavigationMenuStatusNotice","name","showClassicMenuConversionNotice","hideClassicMenuConversionNotice","showNavigationMenuPermissionsNotice","hideNavigationMenuPermissionsNotice","create","createNavigationMenu","status","createNavigationMenuStatus","error","createNavigationMenuError","value","createNavigationMenuPost","isPending","isCreatingNavigationMenu","isSuccess","createNavigationMenuIsSuccess","isError","createNavigationMenuIsError","createUntitledEmptyNavigationMenu","hasUncontrolledInnerBlocks","uncontrolledInnerBlocks","isInnerBlockSelected","innerBlocks","hasSubmenus","find","block","replaceInnerBlocks","selectBlock","__unstableMarkNextChangeAsNotPersistent","blockEditorStore","isResponsiveMenuOpen","setResponsiveMenuVisibility","overlayMenuPreview","setOverlayMenuPreview","hasResolvedNavigationMenus","isNavigationMenuResolved","isNavigationMenuMissing","navigationMenus","canUserUpdateNavigationMenu","hasResolvedCanUserUpdateNavigationMenu","canUserDeleteNavigationMenu","hasResolvedCanUserDeleteNavigationMenu","canUserCreateNavigationMenu","isResolvingCanUserCreateNavigationMenu","hasResolvedCanUserCreateNavigationMenu","navMenuResolvedButMissing","convert","convertClassicMenu","classicMenuConversionStatus","classicMenuConversionError","isConvertingClassicMenu","CLASSIC_MENU_CONVERSION_PENDING","fallbackNavigationMenuId","menu","id","handleUpdateMenu","menuId","options","focusNavigationBlock","isEntityAvailable","hasUnsavedBlocks","length","primaryMenus","filter","classicMenu","locations","includes","slug","sort","a","b","navRef","TagName","isPlaceholder","isLoading","textDecoration","style","typography","hasBlockOverlay","blockProps","color","class","enableContrastChecking","Platform","OS","detectedBackgroundColor","setDetectedBackgroundColor","detectedColor","setDetectedColor","detectedOverlayBackgroundColor","setDetectedOverlayBackgroundColor","detectedOverlayColor","setDetectedOverlayColor","onSelectClassicMenu","navMenu","onSelectNavigationMenu","CLASSIC_MENU_CONVERSION_SUCCESS","CLASSIC_MENU_CONVERSION_ERROR","current","subMenuElement","querySelector","hasManagePermissions","isResponsive","overlayMenuPreviewClasses","open","colorGradientSettings","stylingInspectorControls","close","colorValue","label","onColorChange","resetAllFilter","isManageMenusButtonDisabled","PlaceholderComponent","Placeholder","deletedMenuTitle"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tuseCallback,\n\tuseState,\n\tuseEffect,\n\tuseRef,\n\tPlatform,\n} from '@wordpress/element';\nimport {\n\tInspectorControls,\n\tuseBlockProps,\n\t__experimentalRecursionProvider as RecursionProvider,\n\t__experimentalUseHasRecursion as useHasRecursion,\n\tstore as blockEditorStore,\n\twithColors,\n\tContrastChecker,\n\tgetColorClassName,\n\tWarning,\n\t__experimentalColorGradientSettingsDropdown as ColorGradientSettingsDropdown,\n\t__experimentalUseBlockOverlayActive as useBlockOverlayActive,\n\t__experimentalUseMultipleOriginColorsAndGradients as useMultipleOriginColorsAndGradients,\n} from '@wordpress/block-editor';\nimport { EntityProvider } from '@wordpress/core-data';\n\nimport { useDispatch } from '@wordpress/data';\nimport {\n\tPanelBody,\n\tToggleControl,\n\t__experimentalToggleGroupControl as ToggleGroupControl,\n\t__experimentalToggleGroupControlOption as ToggleGroupControlOption,\n\tButton,\n\tSpinner,\n} from '@wordpress/components';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { speak } from '@wordpress/a11y';\nimport { createBlock } from '@wordpress/blocks';\nimport { close, Icon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport useNavigationMenu from '../use-navigation-menu';\nimport useNavigationEntities from '../use-navigation-entities';\nimport Placeholder from './placeholder';\nimport ResponsiveWrapper from './responsive-wrapper';\nimport NavigationInnerBlocks from './inner-blocks';\nimport NavigationMenuNameControl from './navigation-menu-name-control';\nimport UnsavedInnerBlocks from './unsaved-inner-blocks';\nimport NavigationMenuDeleteControl from './navigation-menu-delete-control';\nimport useNavigationNotice from './use-navigation-notice';\nimport OverlayMenuIcon from './overlay-menu-icon';\nimport OverlayMenuPreview from './overlay-menu-preview';\nimport useConvertClassicToBlockMenu, {\n\tCLASSIC_MENU_CONVERSION_ERROR,\n\tCLASSIC_MENU_CONVERSION_PENDING,\n\tCLASSIC_MENU_CONVERSION_SUCCESS,\n} from './use-convert-classic-menu-to-block-menu';\nimport useCreateNavigationMenu from './use-create-navigation-menu';\nimport { useInnerBlocks } from './use-inner-blocks';\nimport { detectColors } from './utils';\nimport ManageMenusButton from './manage-menus-button';\nimport MenuInspectorControls from './menu-inspector-controls';\nimport DeletedNavigationWarning from './deleted-navigation-warning';\n\nfunction Navigation( {\n\tattributes,\n\tsetAttributes,\n\tclientId,\n\tisSelected,\n\tclassName,\n\tbackgroundColor,\n\tsetBackgroundColor,\n\ttextColor,\n\tsetTextColor,\n\toverlayBackgroundColor,\n\tsetOverlayBackgroundColor,\n\toverlayTextColor,\n\tsetOverlayTextColor,\n\n\t// These props are used by the navigation editor to override specific\n\t// navigation block settings.\n\thasSubmenuIndicatorSetting = true,\n\thasColorSettings = true,\n\tcustomPlaceholder: CustomPlaceholder = null,\n} ) {\n\tconst {\n\t\topenSubmenusOnClick,\n\t\toverlayMenu,\n\t\tshowSubmenuIcon,\n\t\ttemplateLock,\n\t\tlayout: {\n\t\t\tjustifyContent,\n\t\t\torientation = 'horizontal',\n\t\t\tflexWrap = 'wrap',\n\t\t} = {},\n\t\thasIcon,\n\t\ticon = 'handle',\n\t} = attributes;\n\n\tconst ref = attributes.ref;\n\n\tconst setRef = useCallback(\n\t\t( postId ) => {\n\t\t\tsetAttributes( { ref: postId } );\n\t\t},\n\t\t[ setAttributes ]\n\t);\n\n\tconst recursionId = `navigationMenu/${ ref }`;\n\tconst hasAlreadyRendered = useHasRecursion( recursionId );\n\n\t// Preload classic menus, so that they don't suddenly pop-in when viewing\n\t// the Select Menu dropdown.\n\tconst { menus: classicMenus, hasResolvedMenus: hasResolvedClassicMenus } =\n\t\tuseNavigationEntities();\n\n\tconst [ showNavigationMenuStatusNotice, hideNavigationMenuStatusNotice ] =\n\t\tuseNavigationNotice( {\n\t\t\tname: 'block-library/core/navigation/status',\n\t\t} );\n\n\tconst [ showClassicMenuConversionNotice, hideClassicMenuConversionNotice ] =\n\t\tuseNavigationNotice( {\n\t\t\tname: 'block-library/core/navigation/classic-menu-conversion',\n\t\t} );\n\n\tconst [\n\t\tshowNavigationMenuPermissionsNotice,\n\t\thideNavigationMenuPermissionsNotice,\n\t] = useNavigationNotice( {\n\t\tname: 'block-library/core/navigation/permissions/update',\n\t} );\n\n\tconst {\n\t\tcreate: createNavigationMenu,\n\t\tstatus: createNavigationMenuStatus,\n\t\terror: createNavigationMenuError,\n\t\tvalue: createNavigationMenuPost,\n\t\tisPending: isCreatingNavigationMenu,\n\t\tisSuccess: createNavigationMenuIsSuccess,\n\t\tisError: createNavigationMenuIsError,\n\t} = useCreateNavigationMenu( clientId );\n\n\tconst createUntitledEmptyNavigationMenu = () => {\n\t\tcreateNavigationMenu( '' );\n\t};\n\n\tconst {\n\t\thasUncontrolledInnerBlocks,\n\t\tuncontrolledInnerBlocks,\n\t\tisInnerBlockSelected,\n\t\tinnerBlocks,\n\t} = useInnerBlocks( clientId );\n\n\tconst hasSubmenus = !! innerBlocks.find(\n\t\t( block ) => block.name === 'core/navigation-submenu'\n\t);\n\n\tconst {\n\t\treplaceInnerBlocks,\n\t\tselectBlock,\n\t\t__unstableMarkNextChangeAsNotPersistent,\n\t} = useDispatch( blockEditorStore );\n\n\tconst [ isResponsiveMenuOpen, setResponsiveMenuVisibility ] =\n\t\tuseState( false );\n\n\tconst [ overlayMenuPreview, setOverlayMenuPreview ] = useState( false );\n\n\tconst {\n\t\thasResolvedNavigationMenus,\n\t\tisNavigationMenuResolved,\n\t\tisNavigationMenuMissing,\n\t\tnavigationMenus,\n\t\tcanUserUpdateNavigationMenu,\n\t\thasResolvedCanUserUpdateNavigationMenu,\n\t\tcanUserDeleteNavigationMenu,\n\t\thasResolvedCanUserDeleteNavigationMenu,\n\t\tcanUserCreateNavigationMenu,\n\t\tisResolvingCanUserCreateNavigationMenu,\n\t\thasResolvedCanUserCreateNavigationMenu,\n\t} = useNavigationMenu( ref );\n\n\tconst navMenuResolvedButMissing =\n\t\thasResolvedNavigationMenus && isNavigationMenuMissing;\n\n\tconst {\n\t\tconvert: convertClassicMenu,\n\t\tstatus: classicMenuConversionStatus,\n\t\terror: classicMenuConversionError,\n\t} = useConvertClassicToBlockMenu( clientId );\n\n\tconst isConvertingClassicMenu =\n\t\tclassicMenuConversionStatus === CLASSIC_MENU_CONVERSION_PENDING;\n\n\t// Only auto-fallback to the latest published menu.\n\t// The REST API already returns items sorted by publishing date.\n\tconst fallbackNavigationMenuId = navigationMenus?.find(\n\t\t( menu ) => menu.status === 'publish'\n\t)?.id;\n\n\tconst handleUpdateMenu = useCallback(\n\t\t( menuId, options = { focusNavigationBlock: false } ) => {\n\t\t\tconst { focusNavigationBlock } = options;\n\t\t\tsetRef( menuId );\n\t\t\tif ( focusNavigationBlock ) {\n\t\t\t\tselectBlock( clientId );\n\t\t\t}\n\t\t},\n\t\t[ selectBlock, clientId, setRef ]\n\t);\n\n\t// Attempt to retrieve and prioritize any existing navigation menu unless:\n\t// - the are uncontrolled inner blocks already present in the block.\n\t// - the user is creating a new menu.\n\t// - there are no menus to choose from.\n\t// This attempts to pick the first menu if there is a single Navigation Post. If more\n\t// than 1 exists then use the most recent.\n\t// The aim is for the block to \"just work\" from a user perspective using existing data.\n\tuseEffect( () => {\n\t\tif (\n\t\t\thasUncontrolledInnerBlocks ||\n\t\t\tisCreatingNavigationMenu ||\n\t\t\tref ||\n\t\t\t! fallbackNavigationMenuId\n\t\t) {\n\t\t\treturn;\n\t\t}\n\n\t\t/**\n\t\t * This fallback displays (both in editor and on front)\n\t\t * a list of pages only if no menu (user assigned or\n\t\t * automatically picked) is available.\n\t\t * The fallback should not request a save (entity dirty state)\n\t\t * nor to be undoable, hence why it is marked as non persistent\n\t\t */\n\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\tsetRef( fallbackNavigationMenuId );\n\t}, [\n\t\tref,\n\t\tsetRef,\n\t\tisCreatingNavigationMenu,\n\t\tfallbackNavigationMenuId,\n\t\thasUncontrolledInnerBlocks,\n\t\t__unstableMarkNextChangeAsNotPersistent,\n\t] );\n\n\tconst isEntityAvailable =\n\t\t! isNavigationMenuMissing && isNavigationMenuResolved;\n\n\t// If the block has inner blocks, but no menu id, then these blocks are either:\n\t// - inserted via a pattern.\n\t// - inserted directly via Code View (or otherwise).\n\t// - from an older version of navigation block added before the block used a wp_navigation entity.\n\t// Consider this state as 'unsaved' and offer an uncontrolled version of inner blocks,\n\t// that automatically saves the menu as an entity when changes are made to the inner blocks.\n\tconst hasUnsavedBlocks = hasUncontrolledInnerBlocks && ! isEntityAvailable;\n\n\tuseEffect( () => {\n\t\tif (\n\t\t\tref ||\n\t\t\t! hasResolvedClassicMenus ||\n\t\t\t! hasResolvedNavigationMenus ||\n\t\t\tisConvertingClassicMenu ||\n\t\t\tfallbackNavigationMenuId ||\n\t\t\thasUnsavedBlocks ||\n\t\t\t! classicMenus?.length\n\t\t) {\n\t\t\treturn;\n\t\t}\n\n\t\t// If there's non fallback navigation menus and\n\t\t// a classic menu with a `primary` location or slug,\n\t\t// then create a new navigation menu based on it.\n\t\t// Otherwise, use the most recently created classic menu.\n\t\tconst primaryMenus = classicMenus.filter(\n\t\t\t( classicMenu ) =>\n\t\t\t\tclassicMenu.locations.includes( 'primary' ) ||\n\t\t\t\tclassicMenu.slug === 'primary'\n\t\t);\n\n\t\tif ( primaryMenus.length ) {\n\t\t\tconvertClassicMenu(\n\t\t\t\tprimaryMenus[ 0 ].id,\n\t\t\t\tprimaryMenus[ 0 ].name,\n\t\t\t\t'publish'\n\t\t\t);\n\t\t} else {\n\t\t\tclassicMenus.sort( ( a, b ) => {\n\t\t\t\treturn b.id - a.id;\n\t\t\t} );\n\t\t\tconvertClassicMenu(\n\t\t\t\tclassicMenus[ 0 ].id,\n\t\t\t\tclassicMenus[ 0 ].name,\n\t\t\t\t'publish'\n\t\t\t);\n\t\t}\n\t}, [\n\t\thasResolvedClassicMenus,\n\t\thasResolvedNavigationMenus,\n\t\thasUnsavedBlocks,\n\t\tclassicMenus,\n\t\tconvertClassicMenu,\n\t\tcreateNavigationMenu,\n\t\tfallbackNavigationMenuId,\n\t\tisConvertingClassicMenu,\n\t\tref,\n\t] );\n\n\tconst navRef = useRef();\n\n\t// The standard HTML5 tag for the block wrapper.\n\tconst TagName = 'nav';\n\n\t// \"placeholder\" shown if:\n\t// - there is no ref attribute pointing to a Navigation Post.\n\t// - there is no classic menu conversion process in progress.\n\t// - there is no menu creation process in progress.\n\t// - there are no uncontrolled blocks.\n\tconst isPlaceholder =\n\t\t! ref &&\n\t\t! isCreatingNavigationMenu &&\n\t\t! isConvertingClassicMenu &&\n\t\thasResolvedNavigationMenus &&\n\t\tclassicMenus?.length === 0 &&\n\t\t! hasUncontrolledInnerBlocks;\n\n\tuseEffect( () => {\n\t\tif ( isPlaceholder ) {\n\t\t\t/**\n\t\t\t * this fallback only displays (both in editor and on front)\n\t\t\t * the list of pages block if no menu is available as a fallback.\n\t\t\t * We don't want the fallback to request a save,\n\t\t\t * nor to be undoable, hence we mark it non persistent.\n\t\t\t */\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\treplaceInnerBlocks( clientId, [ createBlock( 'core/page-list' ) ] );\n\t\t}\n\t}, [\n\t\tclientId,\n\t\tisPlaceholder,\n\t\tref,\n\t\t__unstableMarkNextChangeAsNotPersistent,\n\t\treplaceInnerBlocks,\n\t] );\n\n\t// \"loading\" state:\n\t// - there is a menu creation process in progress.\n\t// - there is a classic menu conversion process in progress.\n\t// OR:\n\t// - there is a ref attribute pointing to a Navigation Post\n\t// - the Navigation Post isn't available (hasn't resolved) yet.\n\tconst isLoading =\n\t\t! hasResolvedNavigationMenus ||\n\t\tisCreatingNavigationMenu ||\n\t\tisConvertingClassicMenu ||\n\t\t!! ( ref && ! isEntityAvailable && ! isConvertingClassicMenu );\n\n\tconst textDecoration = attributes.style?.typography?.textDecoration;\n\n\tconst hasBlockOverlay = useBlockOverlayActive( clientId );\n\tconst blockProps = useBlockProps( {\n\t\tref: navRef,\n\t\tclassName: classnames( className, {\n\t\t\t'items-justified-right': justifyContent === 'right',\n\t\t\t'items-justified-space-between': justifyContent === 'space-between',\n\t\t\t'items-justified-left': justifyContent === 'left',\n\t\t\t'items-justified-center': justifyContent === 'center',\n\t\t\t'is-vertical': orientation === 'vertical',\n\t\t\t'no-wrap': flexWrap === 'nowrap',\n\t\t\t'is-responsive': 'never' !== overlayMenu,\n\t\t\t'has-text-color': !! textColor.color || !! textColor?.class,\n\t\t\t[ getColorClassName( 'color', textColor?.slug ) ]:\n\t\t\t\t!! textColor?.slug,\n\t\t\t'has-background': !! backgroundColor.color || backgroundColor.class,\n\t\t\t[ getColorClassName( 'background-color', backgroundColor?.slug ) ]:\n\t\t\t\t!! backgroundColor?.slug,\n\t\t\t[ `has-text-decoration-${ textDecoration }` ]: textDecoration,\n\t\t\t'block-editor-block-content-overlay': hasBlockOverlay,\n\t\t} ),\n\t\tstyle: {\n\t\t\tcolor: ! textColor?.slug && textColor?.color,\n\t\t\tbackgroundColor: ! backgroundColor?.slug && backgroundColor?.color,\n\t\t},\n\t} );\n\n\t// Turn on contrast checker for web only since it's not supported on mobile yet.\n\tconst enableContrastChecking = Platform.OS === 'web';\n\n\tconst [ detectedBackgroundColor, setDetectedBackgroundColor ] = useState();\n\tconst [ detectedColor, setDetectedColor ] = useState();\n\tconst [\n\t\tdetectedOverlayBackgroundColor,\n\t\tsetDetectedOverlayBackgroundColor,\n\t] = useState();\n\tconst [ detectedOverlayColor, setDetectedOverlayColor ] = useState();\n\n\tconst onSelectClassicMenu = async ( classicMenu ) => {\n\t\tconst navMenu = await convertClassicMenu(\n\t\t\tclassicMenu.id,\n\t\t\tclassicMenu.name,\n\t\t\t'draft'\n\t\t);\n\t\tif ( navMenu ) {\n\t\t\thandleUpdateMenu( navMenu.id, {\n\t\t\t\tfocusNavigationBlock: true,\n\t\t\t} );\n\t\t}\n\t};\n\n\tconst onSelectNavigationMenu = ( menuId ) => {\n\t\thandleUpdateMenu( menuId );\n\t};\n\n\tuseEffect( () => {\n\t\thideNavigationMenuStatusNotice();\n\n\t\tif ( isCreatingNavigationMenu ) {\n\t\t\tspeak( __( `Creating Navigation Menu.` ) );\n\t\t}\n\n\t\tif ( createNavigationMenuIsSuccess ) {\n\t\t\thandleUpdateMenu( createNavigationMenuPost?.id, {\n\t\t\t\tfocusNavigationBlock: true,\n\t\t\t} );\n\n\t\t\tshowNavigationMenuStatusNotice(\n\t\t\t\t__( `Navigation Menu successfully created.` )\n\t\t\t);\n\t\t}\n\n\t\tif ( createNavigationMenuIsError ) {\n\t\t\tshowNavigationMenuStatusNotice(\n\t\t\t\t__( 'Failed to create Navigation Menu.' )\n\t\t\t);\n\t\t}\n\t}, [\n\t\tcreateNavigationMenuStatus,\n\t\tcreateNavigationMenuError,\n\t\tcreateNavigationMenuPost?.id,\n\t\tcreateNavigationMenuIsError,\n\t\tcreateNavigationMenuIsSuccess,\n\t\tisCreatingNavigationMenu,\n\t\thandleUpdateMenu,\n\t\thideNavigationMenuStatusNotice,\n\t\tshowNavigationMenuStatusNotice,\n\t] );\n\n\tuseEffect( () => {\n\t\thideClassicMenuConversionNotice();\n\t\tif ( classicMenuConversionStatus === CLASSIC_MENU_CONVERSION_PENDING ) {\n\t\t\tspeak( __( 'Classic menu importing.' ) );\n\t\t}\n\n\t\tif ( classicMenuConversionStatus === CLASSIC_MENU_CONVERSION_SUCCESS ) {\n\t\t\tshowClassicMenuConversionNotice(\n\t\t\t\t__( 'Classic menu imported successfully.' )\n\t\t\t);\n\t\t}\n\n\t\tif ( classicMenuConversionStatus === CLASSIC_MENU_CONVERSION_ERROR ) {\n\t\t\tshowClassicMenuConversionNotice(\n\t\t\t\t__( 'Classic menu import failed.' )\n\t\t\t);\n\t\t}\n\t}, [\n\t\tclassicMenuConversionStatus,\n\t\tclassicMenuConversionError,\n\t\thideClassicMenuConversionNotice,\n\t\tshowClassicMenuConversionNotice,\n\t] );\n\n\t// Spacer block needs orientation from context. This is a patch until\n\t// https://github.com/WordPress/gutenberg/issues/36197 is addressed.\n\tuseEffect( () => {\n\t\tif ( orientation ) {\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\tsetAttributes( { orientation } );\n\t\t}\n\t}, [\n\t\torientation,\n\t\t__unstableMarkNextChangeAsNotPersistent,\n\t\tsetAttributes,\n\t] );\n\n\tuseEffect( () => {\n\t\tif ( ! enableContrastChecking ) {\n\t\t\treturn;\n\t\t}\n\t\tdetectColors(\n\t\t\tnavRef.current,\n\t\t\tsetDetectedColor,\n\t\t\tsetDetectedBackgroundColor\n\t\t);\n\n\t\tconst subMenuElement = navRef.current?.querySelector(\n\t\t\t'[data-type=\"core/navigation-submenu\"] [data-type=\"core/navigation-link\"]'\n\t\t);\n\n\t\tif ( ! subMenuElement ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Only detect submenu overlay colors if they have previously been explicitly set.\n\t\t// This avoids the contrast checker from reporting on inherited submenu colors and\n\t\t// showing the contrast warning twice.\n\t\tif ( overlayTextColor.color || overlayBackgroundColor.color ) {\n\t\t\tdetectColors(\n\t\t\t\tsubMenuElement,\n\t\t\t\tsetDetectedOverlayColor,\n\t\t\t\tsetDetectedOverlayBackgroundColor\n\t\t\t);\n\t\t}\n\t}, [\n\t\tenableContrastChecking,\n\t\toverlayTextColor.color,\n\t\toverlayBackgroundColor.color,\n\t] );\n\n\tuseEffect( () => {\n\t\tif ( ! isSelected && ! isInnerBlockSelected ) {\n\t\t\thideNavigationMenuPermissionsNotice();\n\t\t}\n\n\t\tif ( isSelected || isInnerBlockSelected ) {\n\t\t\tif (\n\t\t\t\tref &&\n\t\t\t\t! navMenuResolvedButMissing &&\n\t\t\t\thasResolvedCanUserUpdateNavigationMenu &&\n\t\t\t\t! canUserUpdateNavigationMenu\n\t\t\t) {\n\t\t\t\tshowNavigationMenuPermissionsNotice(\n\t\t\t\t\t__(\n\t\t\t\t\t\t'You do not have permission to edit this Menu. Any changes made will not be saved.'\n\t\t\t\t\t)\n\t\t\t\t);\n\t\t\t}\n\n\t\t\tif (\n\t\t\t\t! ref &&\n\t\t\t\thasResolvedCanUserCreateNavigationMenu &&\n\t\t\t\t! canUserCreateNavigationMenu\n\t\t\t) {\n\t\t\t\tshowNavigationMenuPermissionsNotice(\n\t\t\t\t\t__(\n\t\t\t\t\t\t'You do not have permission to create Navigation Menus.'\n\t\t\t\t\t)\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\t}, [\n\t\tisSelected,\n\t\tisInnerBlockSelected,\n\t\tcanUserUpdateNavigationMenu,\n\t\thasResolvedCanUserUpdateNavigationMenu,\n\t\tcanUserCreateNavigationMenu,\n\t\thasResolvedCanUserCreateNavigationMenu,\n\t\tref,\n\t\thideNavigationMenuPermissionsNotice,\n\t\tshowNavigationMenuPermissionsNotice,\n\t\tnavMenuResolvedButMissing,\n\t] );\n\n\tconst hasManagePermissions =\n\t\tcanUserCreateNavigationMenu || canUserUpdateNavigationMenu;\n\tconst isResponsive = 'never' !== overlayMenu;\n\n\tconst overlayMenuPreviewClasses = classnames(\n\t\t'wp-block-navigation__overlay-menu-preview',\n\t\t{ open: overlayMenuPreview }\n\t);\n\n\tconst colorGradientSettings = useMultipleOriginColorsAndGradients();\n\tconst stylingInspectorControls = (\n\t\t<>\n\t\t\t<InspectorControls>\n\t\t\t\t{ hasSubmenuIndicatorSetting && (\n\t\t\t\t\t<PanelBody title={ __( 'Display' ) }>\n\t\t\t\t\t\t{ isResponsive && (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\tclassName={ overlayMenuPreviewClasses }\n\t\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\t\tsetOverlayMenuPreview(\n\t\t\t\t\t\t\t\t\t\t\t! overlayMenuPreview\n\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ hasIcon && (\n\t\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t\t<OverlayMenuIcon icon={ icon } />\n\t\t\t\t\t\t\t\t\t\t\t<Icon icon={ close } />\n\t\t\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t{ ! hasIcon && (\n\t\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t\t<span>{ __( 'Menu' ) }</span>\n\t\t\t\t\t\t\t\t\t\t\t<span>{ __( 'Close' ) }</span>\n\t\t\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t\t{ overlayMenuPreview && (\n\t\t\t\t\t\t\t\t\t<OverlayMenuPreview\n\t\t\t\t\t\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\t\t\t\t\t\thasIcon={ hasIcon }\n\t\t\t\t\t\t\t\t\t\ticon={ icon }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t<h3>{ __( 'Overlay Menu' ) }</h3>\n\t\t\t\t\t\t<ToggleGroupControl\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\tlabel={ __( 'Configure overlay menu' ) }\n\t\t\t\t\t\t\tvalue={ overlayMenu }\n\t\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t\t'Collapses the navigation options in a menu icon opening an overlay.'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\tsetAttributes( { overlayMenu: value } )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tisBlock\n\t\t\t\t\t\t\thideLabelFromVision\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\t\tvalue=\"never\"\n\t\t\t\t\t\t\t\tlabel={ __( 'Off' ) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\t\tvalue=\"mobile\"\n\t\t\t\t\t\t\t\tlabel={ __( 'Mobile' ) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\t\tvalue=\"always\"\n\t\t\t\t\t\t\t\tlabel={ __( 'Always' ) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</ToggleGroupControl>\n\t\t\t\t\t\t{ hasSubmenus && (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t<h3>{ __( 'Submenus' ) }</h3>\n\t\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\t\tchecked={ openSubmenusOnClick }\n\t\t\t\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\t\topenSubmenusOnClick: value,\n\t\t\t\t\t\t\t\t\t\t\t...( value && {\n\t\t\t\t\t\t\t\t\t\t\t\tshowSubmenuIcon: true,\n\t\t\t\t\t\t\t\t\t\t\t} ), // Make sure arrows are shown when we toggle this on.\n\t\t\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Open on click' ) }\n\t\t\t\t\t\t\t\t/>\n\n\t\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\t\tchecked={ showSubmenuIcon }\n\t\t\t\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\t\tshowSubmenuIcon: value,\n\t\t\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\tdisabled={ attributes.openSubmenusOnClick }\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Show arrow' ) }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</PanelBody>\n\t\t\t\t) }\n\t\t\t</InspectorControls>\n\t\t\t<InspectorControls group=\"color\">\n\t\t\t\t{ hasColorSettings && (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<ColorGradientSettingsDropdown\n\t\t\t\t\t\t\t__experimentalIsRenderedInSidebar\n\t\t\t\t\t\t\tsettings={ [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tcolorValue: textColor.color,\n\t\t\t\t\t\t\t\t\tlabel: __( 'Text' ),\n\t\t\t\t\t\t\t\t\tonColorChange: setTextColor,\n\t\t\t\t\t\t\t\t\tresetAllFilter: () => setTextColor(),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tcolorValue: backgroundColor.color,\n\t\t\t\t\t\t\t\t\tlabel: __( 'Background' ),\n\t\t\t\t\t\t\t\t\tonColorChange: setBackgroundColor,\n\t\t\t\t\t\t\t\t\tresetAllFilter: () => setBackgroundColor(),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tcolorValue: overlayTextColor.color,\n\t\t\t\t\t\t\t\t\tlabel: __( 'Submenu & overlay text' ),\n\t\t\t\t\t\t\t\t\tonColorChange: setOverlayTextColor,\n\t\t\t\t\t\t\t\t\tresetAllFilter: () => setOverlayTextColor(),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tcolorValue: overlayBackgroundColor.color,\n\t\t\t\t\t\t\t\t\tlabel: __( 'Submenu & overlay background' ),\n\t\t\t\t\t\t\t\t\tonColorChange: setOverlayBackgroundColor,\n\t\t\t\t\t\t\t\t\tresetAllFilter: () =>\n\t\t\t\t\t\t\t\t\t\tsetOverlayBackgroundColor(),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t] }\n\t\t\t\t\t\t\tpanelId={ clientId }\n\t\t\t\t\t\t\t{ ...colorGradientSettings }\n\t\t\t\t\t\t\tgradients={ [] }\n\t\t\t\t\t\t\tdisableCustomGradients={ true }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t{ enableContrastChecking && (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t<ContrastChecker\n\t\t\t\t\t\t\t\t\tbackgroundColor={ detectedBackgroundColor }\n\t\t\t\t\t\t\t\t\ttextColor={ detectedColor }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t<ContrastChecker\n\t\t\t\t\t\t\t\t\tbackgroundColor={\n\t\t\t\t\t\t\t\t\t\tdetectedOverlayBackgroundColor\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\ttextColor={ detectedOverlayColor }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</>\n\t\t\t\t) }\n\t\t\t</InspectorControls>\n\t\t</>\n\t);\n\n\tconst isManageMenusButtonDisabled =\n\t\t! hasManagePermissions || ! hasResolvedNavigationMenus;\n\n\tif ( hasUnsavedBlocks && ! isCreatingNavigationMenu ) {\n\t\treturn (\n\t\t\t<TagName { ...blockProps }>\n\t\t\t\t<MenuInspectorControls\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\tcreateNavigationMenuIsSuccess={\n\t\t\t\t\t\tcreateNavigationMenuIsSuccess\n\t\t\t\t\t}\n\t\t\t\t\tcreateNavigationMenuIsError={ createNavigationMenuIsError }\n\t\t\t\t\tcurrentMenuId={ ref }\n\t\t\t\t\tisNavigationMenuMissing={ isNavigationMenuMissing }\n\t\t\t\t\tisManageMenusButtonDisabled={ isManageMenusButtonDisabled }\n\t\t\t\t\tonCreateNew={ createUntitledEmptyNavigationMenu }\n\t\t\t\t\tonSelectClassicMenu={ onSelectClassicMenu }\n\t\t\t\t\tonSelectNavigationMenu={ onSelectNavigationMenu }\n\t\t\t\t\tisLoading={ isLoading }\n\t\t\t\t/>\n\t\t\t\t{ stylingInspectorControls }\n\t\t\t\t<ResponsiveWrapper\n\t\t\t\t\tid={ clientId }\n\t\t\t\t\tonToggle={ setResponsiveMenuVisibility }\n\t\t\t\t\tisOpen={ isResponsiveMenuOpen }\n\t\t\t\t\thasIcon={ hasIcon }\n\t\t\t\t\ticon={ icon }\n\t\t\t\t\tisResponsive={ 'never' !== overlayMenu }\n\t\t\t\t\tisHiddenByDefault={ 'always' === overlayMenu }\n\t\t\t\t\toverlayBackgroundColor={ overlayBackgroundColor }\n\t\t\t\t\toverlayTextColor={ overlayTextColor }\n\t\t\t\t>\n\t\t\t\t\t<UnsavedInnerBlocks\n\t\t\t\t\t\tcreateNavigationMenu={ createNavigationMenu }\n\t\t\t\t\t\tblocks={ uncontrolledInnerBlocks }\n\t\t\t\t\t\thasSelection={ isSelected || isInnerBlockSelected }\n\t\t\t\t\t/>\n\t\t\t\t</ResponsiveWrapper>\n\t\t\t</TagName>\n\t\t);\n\t}\n\n\t// Show a warning if the selected menu is no longer available.\n\t// TODO - the user should be able to select a new one?\n\tif ( ref && isNavigationMenuMissing ) {\n\t\treturn (\n\t\t\t<TagName { ...blockProps }>\n\t\t\t\t<MenuInspectorControls\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\tcreateNavigationMenuIsSuccess={\n\t\t\t\t\t\tcreateNavigationMenuIsSuccess\n\t\t\t\t\t}\n\t\t\t\t\tcreateNavigationMenuIsError={ createNavigationMenuIsError }\n\t\t\t\t\tcurrentMenuId={ ref }\n\t\t\t\t\tisNavigationMenuMissing={ isNavigationMenuMissing }\n\t\t\t\t\tisManageMenusButtonDisabled={ isManageMenusButtonDisabled }\n\t\t\t\t\tonCreateNew={ createUntitledEmptyNavigationMenu }\n\t\t\t\t\tonSelectClassicMenu={ onSelectClassicMenu }\n\t\t\t\t\tonSelectNavigationMenu={ onSelectNavigationMenu }\n\t\t\t\t\tisLoading={ isLoading }\n\t\t\t\t/>\n\t\t\t\t<DeletedNavigationWarning\n\t\t\t\t\tonCreateNew={ createUntitledEmptyNavigationMenu }\n\t\t\t\t/>\n\t\t\t</TagName>\n\t\t);\n\t}\n\n\tif ( isEntityAvailable && hasAlreadyRendered ) {\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t<Warning>\n\t\t\t\t\t{ __( 'Block cannot be rendered inside itself.' ) }\n\t\t\t\t</Warning>\n\t\t\t</div>\n\t\t);\n\t}\n\n\tconst PlaceholderComponent = CustomPlaceholder\n\t\t? CustomPlaceholder\n\t\t: Placeholder;\n\n\t/**\n\t * Historically the navigation block has supported custom placeholders.\n\t * Even though the current UX tries as hard as possible not to\n\t * end up in a placeholder state, the block continues to support\n\t * this extensibility point, via a CustomPlaceholder.\n\t * When CustomPlaceholder is present it becomes the default fallback\n\t * for an empty navigation block, instead of the default fallbacks.\n\t *\n\t */\n\n\tif ( isPlaceholder && CustomPlaceholder ) {\n\t\treturn (\n\t\t\t<TagName { ...blockProps }>\n\t\t\t\t<PlaceholderComponent\n\t\t\t\t\tisSelected={ isSelected }\n\t\t\t\t\tcurrentMenuId={ ref }\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\tcanUserCreateNavigationMenu={ canUserCreateNavigationMenu }\n\t\t\t\t\tisResolvingCanUserCreateNavigationMenu={\n\t\t\t\t\t\tisResolvingCanUserCreateNavigationMenu\n\t\t\t\t\t}\n\t\t\t\t\tonSelectNavigationMenu={ onSelectNavigationMenu }\n\t\t\t\t\tonSelectClassicMenu={ onSelectClassicMenu }\n\t\t\t\t\tonCreateEmpty={ createUntitledEmptyNavigationMenu }\n\t\t\t\t/>\n\t\t\t</TagName>\n\t\t);\n\t}\n\n\treturn (\n\t\t<EntityProvider kind=\"postType\" type=\"wp_navigation\" id={ ref }>\n\t\t\t<RecursionProvider uniqueId={ recursionId }>\n\t\t\t\t<MenuInspectorControls\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\tcreateNavigationMenuIsSuccess={\n\t\t\t\t\t\tcreateNavigationMenuIsSuccess\n\t\t\t\t\t}\n\t\t\t\t\tcreateNavigationMenuIsError={ createNavigationMenuIsError }\n\t\t\t\t\tcurrentMenuId={ ref }\n\t\t\t\t\tisNavigationMenuMissing={ isNavigationMenuMissing }\n\t\t\t\t\tisManageMenusButtonDisabled={ isManageMenusButtonDisabled }\n\t\t\t\t\tonCreateNew={ createUntitledEmptyNavigationMenu }\n\t\t\t\t\tonSelectClassicMenu={ onSelectClassicMenu }\n\t\t\t\t\tonSelectNavigationMenu={ onSelectNavigationMenu }\n\t\t\t\t\tisLoading={ isLoading }\n\t\t\t\t/>\n\t\t\t\t{ stylingInspectorControls }\n\t\t\t\t{ isEntityAvailable && (\n\t\t\t\t\t<InspectorControls group=\"advanced\">\n\t\t\t\t\t\t{ hasResolvedCanUserUpdateNavigationMenu &&\n\t\t\t\t\t\t\tcanUserUpdateNavigationMenu && (\n\t\t\t\t\t\t\t\t<NavigationMenuNameControl />\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ hasResolvedCanUserDeleteNavigationMenu &&\n\t\t\t\t\t\t\tcanUserDeleteNavigationMenu && (\n\t\t\t\t\t\t\t\t<NavigationMenuDeleteControl\n\t\t\t\t\t\t\t\t\tonDelete={ ( deletedMenuTitle = '' ) => {\n\t\t\t\t\t\t\t\t\t\treplaceInnerBlocks( clientId, [] );\n\t\t\t\t\t\t\t\t\t\tshowNavigationMenuStatusNotice(\n\t\t\t\t\t\t\t\t\t\t\tsprintf(\n\t\t\t\t\t\t\t\t\t\t\t\t// translators: %s: the name of a menu (e.g. Header navigation).\n\t\t\t\t\t\t\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t\t\t\t\t\t\t'Navigation menu %s successfully deleted.'\n\t\t\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t\t\t\tdeletedMenuTitle\n\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t<ManageMenusButton\n\t\t\t\t\t\t\tdisabled={ isManageMenusButtonDisabled }\n\t\t\t\t\t\t\tclassName=\"wp-block-navigation-manage-menus-button\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t</InspectorControls>\n\t\t\t\t) }\n\n\t\t\t\t{ isLoading && (\n\t\t\t\t\t<TagName { ...blockProps }>\n\t\t\t\t\t\t<div className=\"wp-block-navigation__loading-indicator-container\">\n\t\t\t\t\t\t\t<Spinner className=\"wp-block-navigation__loading-indicator\" />\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</TagName>\n\t\t\t\t) }\n\n\t\t\t\t{ ! isLoading && (\n\t\t\t\t\t<TagName { ...blockProps }>\n\t\t\t\t\t\t<ResponsiveWrapper\n\t\t\t\t\t\t\tid={ clientId }\n\t\t\t\t\t\t\tonToggle={ setResponsiveMenuVisibility }\n\t\t\t\t\t\t\tlabel={ __( 'Menu' ) }\n\t\t\t\t\t\t\thasIcon={ hasIcon }\n\t\t\t\t\t\t\ticon={ icon }\n\t\t\t\t\t\t\tisOpen={ isResponsiveMenuOpen }\n\t\t\t\t\t\t\tisResponsive={ isResponsive }\n\t\t\t\t\t\t\tisHiddenByDefault={ 'always' === overlayMenu }\n\t\t\t\t\t\t\toverlayBackgroundColor={ overlayBackgroundColor }\n\t\t\t\t\t\t\toverlayTextColor={ overlayTextColor }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ isEntityAvailable && (\n\t\t\t\t\t\t\t\t<NavigationInnerBlocks\n\t\t\t\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\t\t\t\thasCustomPlaceholder={\n\t\t\t\t\t\t\t\t\t\t!! CustomPlaceholder\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\ttemplateLock={ templateLock }\n\t\t\t\t\t\t\t\t\torientation={ orientation }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</ResponsiveWrapper>\n\t\t\t\t\t</TagName>\n\t\t\t\t) }\n\t\t\t</RecursionProvider>\n\t\t</EntityProvider>\n\t);\n}\n\nexport default withColors(\n\t{ textColor: 'color' },\n\t{ backgroundColor: 'color' },\n\t{ overlayBackgroundColor: 'color' },\n\t{ overlayTextColor: 'color' }\n)( Navigation );\n"]}
|
|
@@ -26,7 +26,10 @@ var _placeholderPreview = _interopRequireDefault(require("./placeholder/placehol
|
|
|
26
26
|
*/
|
|
27
27
|
const ALLOWED_BLOCKS = ['core/navigation-link', 'core/search', 'core/social-links', 'core/page-list', 'core/spacer', 'core/home-link', 'core/site-title', 'core/site-logo', 'core/navigation-submenu'];
|
|
28
28
|
const DEFAULT_BLOCK = {
|
|
29
|
-
name: 'core/navigation-link'
|
|
29
|
+
name: 'core/navigation-link',
|
|
30
|
+
attributes: {
|
|
31
|
+
type: 'page'
|
|
32
|
+
}
|
|
30
33
|
};
|
|
31
34
|
|
|
32
35
|
function NavigationInnerBlocks(_ref) {
|