@wordpress/block-library 7.0.1 → 7.1.0-next.e230fbab09.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/README.md +16 -0
- package/build/audio/edit.js +4 -4
- package/build/audio/edit.js.map +1 -1
- package/build/audio/edit.native.js +4 -4
- package/build/audio/edit.native.js.map +1 -1
- package/build/audio/transforms.js +1 -1
- package/build/audio/transforms.js.map +1 -1
- package/build/block/edit.js +3 -9
- package/build/block/edit.js.map +1 -1
- package/build/button/edit.js +3 -2
- package/build/button/edit.js.map +1 -1
- package/build/button/edit.native.js +4 -4
- package/build/button/edit.native.js.map +1 -1
- package/build/buttons/transforms.js +8 -8
- package/build/buttons/transforms.js.map +1 -1
- package/build/categories/edit.js +15 -26
- package/build/categories/edit.js.map +1 -1
- package/build/code/index.js +0 -1
- package/build/code/index.js.map +1 -1
- package/build/columns/columnCalculations.native.js +1 -1
- package/build/columns/columnCalculations.native.js.map +1 -1
- package/build/columns/edit.js +1 -1
- package/build/columns/edit.js.map +1 -1
- package/build/columns/edit.native.js +3 -3
- package/build/columns/edit.native.js.map +1 -1
- package/build/columns/index.js +12 -0
- package/build/columns/index.js.map +1 -1
- package/build/comment-author-avatar/edit.js +17 -4
- package/build/comment-author-avatar/edit.js.map +1 -1
- package/build/comment-template/edit.js +94 -36
- package/build/comment-template/edit.js.map +1 -1
- package/build/comment-template/hooks.js +175 -0
- package/build/comment-template/hooks.js.map +1 -0
- package/build/comment-template/index.js +1 -1
- package/build/comment-template/util.js.map +1 -1
- package/build/comments-pagination-next/index.js +1 -1
- package/build/comments-pagination-numbers/index.js +1 -1
- package/build/comments-query-loop/edit/comments-inspector-controls.js +20 -9
- package/build/comments-query-loop/edit/comments-inspector-controls.js.map +1 -1
- package/build/comments-query-loop/edit.js +1 -19
- package/build/comments-query-loop/edit.js.map +1 -1
- package/build/comments-query-loop/index.js +5 -0
- package/build/comments-query-loop/index.js.map +1 -1
- package/build/cover/controls.native.js +5 -5
- package/build/cover/controls.native.js.map +1 -1
- package/build/cover/deprecated.js +188 -17
- package/build/cover/deprecated.js.map +1 -1
- package/build/cover/edit.js +29 -33
- package/build/cover/edit.js.map +1 -1
- package/build/cover/edit.native.js +15 -13
- package/build/cover/edit.native.js.map +1 -1
- package/build/cover/overlay-color-settings.native.js +7 -6
- package/build/cover/overlay-color-settings.native.js.map +1 -1
- package/build/cover/save.js +1 -1
- package/build/cover/save.js.map +1 -1
- package/build/cover/shared.js +2 -2
- package/build/cover/shared.js.map +1 -1
- package/build/cover/transforms.js +4 -2
- package/build/cover/transforms.js.map +1 -1
- package/build/embed/edit.js +1 -1
- package/build/embed/edit.js.map +1 -1
- package/build/embed/edit.native.js +1 -1
- package/build/embed/edit.native.js.map +1 -1
- package/build/embed/util.js +2 -2
- package/build/embed/util.js.map +1 -1
- package/build/embed/variations.js +1 -1
- package/build/embed/variations.js.map +1 -1
- package/build/file/edit.js +20 -17
- package/build/file/edit.js.map +1 -1
- package/build/file/edit.native.js +1 -1
- package/build/file/edit.native.js.map +1 -1
- package/build/file/save.js +7 -3
- package/build/file/save.js.map +1 -1
- package/build/freeform/edit.js +2 -2
- package/build/freeform/edit.js.map +1 -1
- package/build/gallery/edit.js +1 -1
- package/build/gallery/edit.js.map +1 -1
- package/build/gallery/gallery.native.js +1 -1
- package/build/gallery/gallery.native.js.map +1 -1
- package/build/gallery/v1/edit.js +3 -3
- package/build/gallery/v1/edit.js.map +1 -1
- package/build/gallery/v1/gallery-image.native.js +3 -3
- package/build/gallery/v1/gallery-image.native.js.map +1 -1
- package/build/gallery/v1/gallery.native.js +2 -2
- package/build/gallery/v1/gallery.native.js.map +1 -1
- package/build/group/index.js +4 -37
- package/build/group/index.js.map +1 -1
- package/build/group/transforms.js +45 -0
- package/build/group/transforms.js.map +1 -0
- package/build/heading/edit.js +14 -2
- package/build/heading/edit.js.map +1 -1
- package/build/home-link/edit.js +1 -1
- package/build/home-link/edit.js.map +1 -1
- package/build/image/deprecated.js +89 -5
- package/build/image/deprecated.js.map +1 -1
- package/build/image/edit.js +7 -6
- package/build/image/edit.js.map +1 -1
- package/build/image/edit.native.js +25 -10
- package/build/image/edit.native.js.map +1 -1
- package/build/image/save.js +0 -7
- package/build/image/save.js.map +1 -1
- package/build/image/transforms.js +1 -1
- package/build/image/transforms.js.map +1 -1
- package/build/index.js +3 -4
- package/build/index.js.map +1 -1
- package/build/index.native.js +2 -2
- package/build/index.native.js.map +1 -1
- package/build/latest-posts/edit.js +1 -0
- package/build/latest-posts/edit.js.map +1 -1
- package/build/media-text/edit.js +21 -2
- package/build/media-text/edit.js.map +1 -1
- package/build/media-text/edit.native.js +2 -2
- package/build/media-text/edit.native.js.map +1 -1
- package/build/media-text/media-container.native.js +1 -1
- package/build/media-text/media-container.native.js.map +1 -1
- package/build/missing/edit.native.js +1 -1
- package/build/missing/edit.native.js.map +1 -1
- package/build/more/transforms.js +2 -2
- package/build/more/transforms.js.map +1 -1
- package/build/navigation/edit/index.js +144 -68
- package/build/navigation/edit/index.js.map +1 -1
- package/build/navigation/edit/inner-blocks.js +8 -3
- package/build/navigation/edit/inner-blocks.js.map +1 -1
- package/build/navigation/edit/navigation-menu-selector.js +82 -52
- package/build/navigation/edit/navigation-menu-selector.js.map +1 -1
- package/build/navigation/edit/placeholder/index.js +32 -61
- package/build/navigation/edit/placeholder/index.js.map +1 -1
- package/build/navigation/edit/placeholder/placeholder-preview.js +3 -12
- package/build/navigation/edit/placeholder/placeholder-preview.js.map +1 -1
- package/build/navigation/edit/unsaved-inner-blocks.js +3 -1
- package/build/navigation/edit/unsaved-inner-blocks.js.map +1 -1
- package/build/navigation/edit/use-convert-classic-menu-to-block-menu.js +120 -0
- package/build/navigation/edit/use-convert-classic-menu-to-block-menu.js.map +1 -0
- package/build/navigation/edit/use-create-navigation-menu.js +53 -4
- package/build/navigation/edit/use-create-navigation-menu.js.map +1 -1
- package/build/navigation/edit/use-navigation-notice.js +3 -3
- package/build/navigation/edit/use-navigation-notice.js.map +1 -1
- package/build/navigation/menu-items-to-blocks.js +1 -1
- package/build/navigation/menu-items-to-blocks.js.map +1 -1
- package/build/navigation/use-navigation-entities.js +25 -49
- package/build/navigation/use-navigation-entities.js.map +1 -1
- package/build/navigation/use-navigation-menu.js +8 -6
- package/build/navigation/use-navigation-menu.js.map +1 -1
- package/build/navigation-link/fallback-variations.js +1 -1
- package/build/navigation-link/fallback-variations.js.map +1 -1
- package/build/navigation-link/hooks.js +2 -2
- package/build/navigation-link/hooks.js.map +1 -1
- package/build/navigation-submenu/edit.js +43 -11
- package/build/navigation-submenu/edit.js.map +1 -1
- package/build/page-list/convert-to-links-modal.js +13 -23
- package/build/page-list/convert-to-links-modal.js.map +1 -1
- package/build/page-list/edit.js +19 -39
- package/build/page-list/edit.js.map +1 -1
- package/build/post-author-name/edit.js +2 -1
- package/build/post-author-name/edit.js.map +1 -1
- package/build/post-comments-form/edit.js +3 -1
- package/build/post-comments-form/edit.js.map +1 -1
- package/build/post-excerpt/edit.js +7 -4
- package/build/post-excerpt/edit.js.map +1 -1
- package/build/post-terms/edit.js +3 -1
- package/build/post-terms/edit.js.map +1 -1
- package/build/query-title/edit.js +0 -1
- package/build/query-title/edit.js.map +1 -1
- package/build/search/edit.js +4 -1
- package/build/search/edit.js.map +1 -1
- package/build/search/edit.native.js +1 -1
- package/build/search/edit.native.js.map +1 -1
- package/build/separator/save.js +4 -4
- package/build/separator/save.js.map +1 -1
- package/build/separator/separator-settings.native.js +1 -1
- package/build/separator/separator-settings.native.js.map +1 -1
- package/build/site-logo/edit.js +1 -1
- package/build/site-logo/edit.js.map +1 -1
- package/build/social-link/edit.native.js +11 -3
- package/build/social-link/edit.native.js.map +1 -1
- package/build/social-links/deprecated.js +1 -62
- package/build/social-links/deprecated.js.map +1 -1
- package/build/spacer/controls.js +5 -5
- package/build/spacer/controls.js.map +1 -1
- package/build/spacer/controls.native.js +5 -5
- package/build/spacer/controls.native.js.map +1 -1
- package/build/table/edit.js +2 -2
- package/build/table/edit.js.map +1 -1
- package/build/template-part/edit/index.js +36 -64
- package/build/template-part/edit/index.js.map +1 -1
- package/build/template-part/edit/placeholder.js +64 -0
- package/build/template-part/edit/placeholder.js.map +1 -0
- package/build/template-part/edit/selection-modal.js +103 -0
- package/build/template-part/edit/selection-modal.js.map +1 -0
- package/build/template-part/edit/title-modal.js +54 -0
- package/build/template-part/edit/title-modal.js.map +1 -0
- package/build/template-part/edit/utils/hooks.js +156 -0
- package/build/template-part/edit/utils/hooks.js.map +1 -0
- package/build/template-part/index.js +3 -1
- package/build/template-part/index.js.map +1 -1
- package/build/video/edit.js +4 -4
- package/build/video/edit.js.map +1 -1
- package/build/video/edit.native.js +3 -3
- package/build/video/edit.native.js.map +1 -1
- package/build-module/audio/edit.js +4 -4
- package/build-module/audio/edit.js.map +1 -1
- package/build-module/audio/edit.native.js +4 -4
- package/build-module/audio/edit.native.js.map +1 -1
- package/build-module/audio/transforms.js +1 -1
- package/build-module/audio/transforms.js.map +1 -1
- package/build-module/block/edit.js +5 -11
- package/build-module/block/edit.js.map +1 -1
- package/build-module/button/edit.js +3 -2
- package/build-module/button/edit.js.map +1 -1
- package/build-module/button/edit.native.js +6 -6
- package/build-module/button/edit.native.js.map +1 -1
- package/build-module/buttons/transforms.js +8 -8
- package/build-module/buttons/transforms.js.map +1 -1
- package/build-module/categories/edit.js +15 -25
- package/build-module/categories/edit.js.map +1 -1
- package/build-module/code/index.js +0 -1
- package/build-module/code/index.js.map +1 -1
- package/build-module/columns/columnCalculations.native.js +1 -1
- package/build-module/columns/columnCalculations.native.js.map +1 -1
- package/build-module/columns/edit.js +1 -1
- package/build-module/columns/edit.js.map +1 -1
- package/build-module/columns/edit.native.js +3 -3
- package/build-module/columns/edit.native.js.map +1 -1
- package/build-module/columns/index.js +12 -0
- package/build-module/columns/index.js.map +1 -1
- package/build-module/comment-author-avatar/edit.js +18 -6
- package/build-module/comment-author-avatar/edit.js.map +1 -1
- package/build-module/comment-template/edit.js +95 -37
- package/build-module/comment-template/edit.js.map +1 -1
- package/build-module/comment-template/hooks.js +156 -0
- package/build-module/comment-template/hooks.js.map +1 -0
- package/build-module/comment-template/index.js +1 -1
- package/build-module/comment-template/util.js.map +1 -1
- package/build-module/comments-pagination-next/index.js +1 -1
- package/build-module/comments-pagination-numbers/index.js +1 -1
- package/build-module/comments-query-loop/edit/comments-inspector-controls.js +20 -9
- package/build-module/comments-query-loop/edit/comments-inspector-controls.js.map +1 -1
- package/build-module/comments-query-loop/edit.js +2 -19
- package/build-module/comments-query-loop/edit.js.map +1 -1
- package/build-module/comments-query-loop/index.js +5 -0
- package/build-module/comments-query-loop/index.js.map +1 -1
- package/build-module/cover/controls.native.js +5 -5
- package/build-module/cover/controls.native.js.map +1 -1
- package/build-module/cover/deprecated.js +190 -17
- package/build-module/cover/deprecated.js.map +1 -1
- package/build-module/cover/edit.js +31 -35
- package/build-module/cover/edit.js.map +1 -1
- package/build-module/cover/edit.native.js +18 -16
- package/build-module/cover/edit.native.js.map +1 -1
- package/build-module/cover/overlay-color-settings.native.js +7 -7
- package/build-module/cover/overlay-color-settings.native.js.map +1 -1
- package/build-module/cover/save.js +1 -1
- package/build-module/cover/save.js.map +1 -1
- package/build-module/cover/shared.js +2 -2
- package/build-module/cover/shared.js.map +1 -1
- package/build-module/cover/transforms.js +4 -2
- package/build-module/cover/transforms.js.map +1 -1
- package/build-module/embed/edit.js +1 -1
- package/build-module/embed/edit.js.map +1 -1
- package/build-module/embed/edit.native.js +1 -1
- package/build-module/embed/edit.native.js.map +1 -1
- package/build-module/embed/util.js +2 -2
- package/build-module/embed/util.js.map +1 -1
- package/build-module/embed/variations.js +1 -1
- package/build-module/embed/variations.js.map +1 -1
- package/build-module/file/edit.js +21 -18
- package/build-module/file/edit.js.map +1 -1
- package/build-module/file/edit.native.js +1 -1
- package/build-module/file/edit.native.js.map +1 -1
- package/build-module/file/save.js +7 -3
- package/build-module/file/save.js.map +1 -1
- package/build-module/freeform/edit.js +2 -2
- package/build-module/freeform/edit.js.map +1 -1
- package/build-module/gallery/edit.js +1 -1
- package/build-module/gallery/edit.js.map +1 -1
- package/build-module/gallery/gallery.native.js +1 -1
- package/build-module/gallery/gallery.native.js.map +1 -1
- package/build-module/gallery/v1/edit.js +3 -3
- package/build-module/gallery/v1/edit.js.map +1 -1
- package/build-module/gallery/v1/gallery-image.native.js +3 -3
- package/build-module/gallery/v1/gallery-image.native.js.map +1 -1
- package/build-module/gallery/v1/gallery.native.js +2 -2
- package/build-module/gallery/v1/gallery.native.js.map +1 -1
- package/build-module/group/index.js +3 -36
- package/build-module/group/index.js.map +1 -1
- package/build-module/group/transforms.js +36 -0
- package/build-module/group/transforms.js.map +1 -0
- package/build-module/heading/edit.js +15 -3
- package/build-module/heading/edit.js.map +1 -1
- package/build-module/home-link/edit.js +1 -1
- package/build-module/home-link/edit.js.map +1 -1
- package/build-module/image/deprecated.js +90 -7
- package/build-module/image/deprecated.js.map +1 -1
- package/build-module/image/edit.js +7 -6
- package/build-module/image/edit.js.map +1 -1
- package/build-module/image/edit.native.js +25 -10
- package/build-module/image/edit.native.js.map +1 -1
- package/build-module/image/save.js +0 -7
- package/build-module/image/save.js.map +1 -1
- package/build-module/image/transforms.js +1 -1
- package/build-module/image/transforms.js.map +1 -1
- package/build-module/index.js +4 -5
- package/build-module/index.js.map +1 -1
- package/build-module/index.native.js +2 -2
- package/build-module/index.native.js.map +1 -1
- package/build-module/latest-posts/edit.js +1 -0
- package/build-module/latest-posts/edit.js.map +1 -1
- package/build-module/media-text/edit.js +20 -2
- package/build-module/media-text/edit.js.map +1 -1
- package/build-module/media-text/edit.native.js +2 -2
- package/build-module/media-text/edit.native.js.map +1 -1
- package/build-module/media-text/media-container.native.js +1 -1
- package/build-module/media-text/media-container.native.js.map +1 -1
- package/build-module/missing/edit.native.js +1 -1
- package/build-module/missing/edit.native.js.map +1 -1
- package/build-module/more/transforms.js +2 -2
- package/build-module/more/transforms.js.map +1 -1
- package/build-module/navigation/edit/index.js +138 -68
- package/build-module/navigation/edit/index.js.map +1 -1
- package/build-module/navigation/edit/inner-blocks.js +8 -3
- package/build-module/navigation/edit/inner-blocks.js.map +1 -1
- package/build-module/navigation/edit/navigation-menu-selector.js +82 -48
- package/build-module/navigation/edit/navigation-menu-selector.js.map +1 -1
- package/build-module/navigation/edit/placeholder/index.js +33 -59
- package/build-module/navigation/edit/placeholder/index.js.map +1 -1
- package/build-module/navigation/edit/placeholder/placeholder-preview.js +3 -9
- package/build-module/navigation/edit/placeholder/placeholder-preview.js.map +1 -1
- package/build-module/navigation/edit/unsaved-inner-blocks.js +3 -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 +100 -0
- package/build-module/navigation/edit/use-convert-classic-menu-to-block-menu.js.map +1 -0
- package/build-module/navigation/edit/use-create-navigation-menu.js +48 -5
- package/build-module/navigation/edit/use-create-navigation-menu.js.map +1 -1
- package/build-module/navigation/edit/use-navigation-notice.js +3 -3
- package/build-module/navigation/edit/use-navigation-notice.js.map +1 -1
- package/build-module/navigation/menu-items-to-blocks.js +1 -1
- package/build-module/navigation/menu-items-to-blocks.js.map +1 -1
- package/build-module/navigation/use-navigation-entities.js +26 -50
- package/build-module/navigation/use-navigation-entities.js.map +1 -1
- package/build-module/navigation/use-navigation-menu.js +8 -6
- package/build-module/navigation/use-navigation-menu.js.map +1 -1
- package/build-module/navigation-link/fallback-variations.js +1 -1
- package/build-module/navigation-link/fallback-variations.js.map +1 -1
- package/build-module/navigation-link/hooks.js +2 -2
- package/build-module/navigation-link/hooks.js.map +1 -1
- package/build-module/navigation-submenu/edit.js +43 -12
- package/build-module/navigation-submenu/edit.js.map +1 -1
- package/build-module/page-list/convert-to-links-modal.js +15 -25
- package/build-module/page-list/convert-to-links-modal.js.map +1 -1
- package/build-module/page-list/edit.js +21 -41
- package/build-module/page-list/edit.js.map +1 -1
- package/build-module/post-author-name/edit.js +2 -1
- package/build-module/post-author-name/edit.js.map +1 -1
- package/build-module/post-comments-form/edit.js +4 -2
- package/build-module/post-comments-form/edit.js.map +1 -1
- package/build-module/post-excerpt/edit.js +9 -6
- package/build-module/post-excerpt/edit.js.map +1 -1
- package/build-module/post-terms/edit.js +2 -1
- package/build-module/post-terms/edit.js.map +1 -1
- package/build-module/query-title/edit.js +0 -1
- package/build-module/query-title/edit.js.map +1 -1
- package/build-module/search/edit.js +3 -1
- package/build-module/search/edit.js.map +1 -1
- package/build-module/search/edit.native.js +1 -1
- package/build-module/search/edit.native.js.map +1 -1
- package/build-module/separator/save.js +4 -4
- package/build-module/separator/save.js.map +1 -1
- package/build-module/separator/separator-settings.native.js +1 -1
- package/build-module/separator/separator-settings.native.js.map +1 -1
- package/build-module/site-logo/edit.js +1 -1
- package/build-module/site-logo/edit.js.map +1 -1
- package/build-module/social-link/edit.native.js +11 -3
- package/build-module/social-link/edit.native.js.map +1 -1
- package/build-module/social-links/deprecated.js +1 -62
- package/build-module/social-links/deprecated.js.map +1 -1
- package/build-module/spacer/controls.js +5 -5
- package/build-module/spacer/controls.js.map +1 -1
- package/build-module/spacer/controls.native.js +5 -5
- package/build-module/spacer/controls.native.js.map +1 -1
- package/build-module/table/edit.js +2 -2
- package/build-module/table/edit.js.map +1 -1
- package/build-module/template-part/edit/index.js +37 -65
- package/build-module/template-part/edit/index.js.map +1 -1
- package/build-module/template-part/edit/placeholder.js +52 -0
- package/build-module/template-part/edit/placeholder.js.map +1 -0
- package/build-module/template-part/edit/selection-modal.js +89 -0
- package/build-module/template-part/edit/selection-modal.js.map +1 -0
- package/build-module/template-part/edit/title-modal.js +46 -0
- package/build-module/template-part/edit/title-modal.js.map +1 -0
- package/build-module/template-part/edit/utils/hooks.js +135 -0
- package/build-module/template-part/edit/utils/hooks.js.map +1 -0
- package/build-module/template-part/index.js +2 -1
- package/build-module/template-part/index.js.map +1 -1
- package/build-module/video/edit.js +4 -4
- package/build-module/video/edit.js.map +1 -1
- package/build-module/video/edit.native.js +3 -3
- package/build-module/video/edit.native.js.map +1 -1
- package/build-style/button/editor-rtl.css +0 -3
- package/build-style/button/editor.css +0 -3
- package/build-style/code/style-rtl.css +2 -1
- package/build-style/code/style.css +2 -1
- package/build-style/code/theme-rtl.css +0 -3
- package/build-style/code/theme.css +0 -3
- package/build-style/comment-author-avatar/editor-rtl.css +83 -0
- package/build-style/comment-author-avatar/editor.css +83 -0
- package/build-style/common-rtl.css +1 -1
- package/build-style/common.css +1 -1
- package/build-style/cover/style-rtl.css +5 -5
- package/build-style/cover/style.css +5 -5
- package/build-style/editor-rtl.css +43 -84
- package/build-style/editor.css +43 -84
- package/build-style/image/editor-rtl.css +0 -16
- package/build-style/image/editor.css +0 -16
- package/build-style/image/style-rtl.css +4 -1
- package/build-style/image/style.css +4 -1
- package/build-style/navigation/editor-rtl.css +16 -0
- package/build-style/navigation/editor.css +16 -0
- package/build-style/navigation/style-rtl.css +14 -3
- package/build-style/navigation/style.css +14 -3
- package/build-style/page-list/editor-rtl.css +0 -9
- package/build-style/page-list/editor.css +0 -9
- package/build-style/style-rtl.css +32 -13
- package/build-style/style.css +32 -13
- package/build-style/tag-cloud/style-rtl.css +6 -2
- package/build-style/tag-cloud/style.css +6 -2
- package/build-style/template-part/editor-rtl.css +19 -56
- package/build-style/template-part/editor.css +19 -56
- package/build-style/theme-rtl.css +0 -3
- package/build-style/theme.css +0 -3
- package/package.json +32 -28
- package/src/archives/index.php +1 -1
- package/src/audio/edit.js +4 -4
- package/src/audio/edit.native.js +4 -4
- package/src/audio/transforms.js +1 -1
- package/src/block/edit.js +7 -22
- package/src/block/test/edit.native.js +9 -9
- package/src/button/edit.js +2 -1
- package/src/button/edit.native.js +5 -5
- package/src/button/editor.scss +0 -5
- package/src/buttons/test/edit.native.js +3 -3
- package/src/buttons/transforms.js +8 -8
- package/src/categories/edit.js +12 -22
- package/src/code/block.json +0 -1
- package/src/code/style.scss +4 -2
- package/src/code/theme.scss +0 -3
- package/src/columns/block.json +12 -0
- package/src/columns/columnCalculations.native.js +1 -1
- package/src/columns/edit.js +1 -1
- package/src/columns/edit.native.js +3 -3
- package/src/comment-author-avatar/edit.js +13 -8
- package/src/comment-author-avatar/editor.scss +7 -0
- package/src/comment-template/block.json +7 -1
- package/src/comment-template/edit.js +102 -40
- package/src/comment-template/hooks.js +151 -0
- package/src/comment-template/index.php +8 -0
- package/src/comment-template/util.js +1 -0
- package/src/comments-pagination-next/block.json +8 -1
- package/src/comments-pagination-next/index.php +6 -8
- package/src/comments-pagination-numbers/block.json +7 -1
- package/src/comments-pagination-numbers/index.php +3 -10
- package/src/comments-query-loop/block.json +5 -0
- package/src/comments-query-loop/edit/comments-inspector-controls.js +22 -4
- package/src/comments-query-loop/edit.js +1 -16
- package/src/common.scss +1 -1
- package/src/cover/controls.native.js +1 -1
- package/src/cover/deprecated.js +214 -1
- package/src/cover/edit.js +21 -36
- package/src/cover/edit.native.js +23 -15
- package/src/cover/overlay-color-settings.native.js +6 -7
- package/src/cover/save.js +4 -3
- package/src/cover/shared.js +2 -2
- package/src/cover/style.scss +5 -3
- package/src/cover/test/edit.native.js +39 -39
- package/src/cover/transforms.js +2 -0
- package/src/editor.scss +1 -0
- package/src/embed/edit.js +1 -1
- package/src/embed/edit.native.js +1 -1
- package/src/embed/test/index.native.js +105 -105
- package/src/embed/util.js +2 -2
- package/src/embed/variations.js +1 -1
- package/src/file/edit.js +19 -17
- package/src/file/edit.native.js +1 -1
- package/src/file/save.js +9 -3
- package/src/file/style.native.scss +1 -0
- package/src/freeform/edit.js +2 -2
- package/src/gallery/edit.js +1 -1
- package/src/gallery/gallery.native.js +1 -1
- package/src/gallery/index.php +1 -8
- package/src/gallery/test/__snapshots__/index.native.js.snap +164 -0
- package/src/gallery/test/helpers.native.js +293 -0
- package/src/gallery/test/index.native.js +583 -65
- package/src/gallery/v1/edit.js +3 -4
- package/src/gallery/v1/gallery-image.native.js +3 -3
- package/src/gallery/v1/gallery.native.js +2 -2
- package/src/group/block.json +1 -0
- package/src/group/index.js +2 -54
- package/src/group/transforms.js +52 -0
- package/src/heading/edit.js +18 -5
- package/src/home-link/edit.js +1 -1
- package/src/home-link/index.php +1 -19
- package/src/image/deprecated.js +105 -1
- package/src/image/edit.js +7 -6
- package/src/image/edit.native.js +25 -8
- package/src/image/editor.scss +0 -18
- package/src/image/save.js +0 -8
- package/src/image/style.scss +5 -1
- package/src/image/test/edit.native.js +1 -11
- package/src/image/transforms.js +1 -1
- package/src/index.js +2 -3
- package/src/index.native.js +2 -2
- package/src/latest-posts/edit.js +1 -0
- package/src/latest-posts/index.php +1 -1
- package/src/media-text/edit.js +20 -2
- package/src/media-text/edit.native.js +2 -2
- package/src/media-text/media-container.native.js +1 -1
- package/src/media-text/style.native.scss +1 -0
- package/src/missing/edit.native.js +1 -1
- package/src/missing/test/edit-integration.native.js +4 -4
- package/src/missing/test/edit.native.js +2 -2
- package/src/more/transforms.js +2 -2
- package/src/navigation/edit/index.js +212 -88
- package/src/navigation/edit/inner-blocks.js +11 -4
- package/src/navigation/edit/navigation-menu-selector.js +121 -58
- package/src/navigation/edit/placeholder/index.js +64 -111
- package/src/navigation/edit/placeholder/placeholder-preview.js +3 -10
- package/src/navigation/edit/unsaved-inner-blocks.js +3 -1
- package/src/navigation/edit/use-convert-classic-menu-to-block-menu.js +137 -0
- package/src/navigation/edit/use-create-navigation-menu.js +59 -8
- package/src/navigation/edit/use-navigation-notice.js +3 -3
- package/src/navigation/editor.scss +23 -1
- package/src/navigation/index.php +4 -4
- package/src/navigation/menu-items-to-blocks.js +1 -1
- package/src/navigation/style.scss +22 -3
- package/src/navigation/test/menu-items-to-blocks.js +1 -1
- package/src/navigation/use-navigation-entities.js +26 -60
- package/src/navigation/use-navigation-menu.js +11 -6
- package/src/navigation-link/fallback-variations.js +1 -1
- package/src/navigation-link/hooks.js +2 -2
- package/src/navigation-link/index.php +3 -22
- package/src/navigation-link/test/edit.js +5 -5
- package/src/navigation-submenu/edit.js +52 -14
- package/src/navigation-submenu/index.php +3 -21
- package/src/page-list/convert-to-links-modal.js +17 -31
- package/src/page-list/edit.js +35 -48
- package/src/page-list/editor.scss +0 -10
- package/src/page-list/index.php +4 -4
- package/src/post-author-name/edit.js +1 -0
- package/src/post-author-name/index.php +1 -1
- package/src/post-comments-form/edit.js +7 -3
- package/src/post-excerpt/edit.js +9 -12
- package/src/post-navigation-link/index.php +3 -3
- package/src/post-terms/edit.js +2 -1
- package/src/query-title/edit.js +0 -1
- package/src/search/edit.js +6 -0
- package/src/search/edit.native.js +1 -1
- package/src/search/index.php +8 -4
- package/src/search/test/edit.native.js +0 -1
- package/src/separator/save.js +4 -4
- package/src/separator/separator-settings.native.js +1 -1
- package/src/site-logo/edit.js +1 -1
- package/src/site-logo/index.php +1 -1
- package/src/social-link/edit.native.js +17 -8
- package/src/social-link/test/index.native.js +138 -0
- package/src/social-links/deprecated.js +0 -59
- package/src/spacer/controls.js +1 -1
- package/src/spacer/controls.native.js +1 -1
- package/src/table/edit.js +2 -2
- package/src/tag-cloud/style.scss +12 -7
- package/src/template-part/edit/index.js +61 -71
- package/src/template-part/edit/placeholder.js +78 -0
- package/src/template-part/edit/selection-modal.js +115 -0
- package/src/template-part/edit/title-modal.js +59 -0
- package/src/template-part/edit/utils/hooks.js +158 -0
- package/src/template-part/editor.scss +16 -74
- package/src/template-part/index.js +4 -1
- package/src/video/edit.js +4 -4
- package/src/video/edit.native.js +3 -3
- package/src/video/style.native.scss +1 -0
- package/build/navigation/edit/existing-menus-options.js +0 -62
- package/build/navigation/edit/existing-menus-options.js.map +0 -1
- package/build/navigation/use-convert-classic-menu.js +0 -59
- package/build/navigation/use-convert-classic-menu.js.map +0 -1
- package/build/template-part/edit/placeholder/index.js +0 -141
- package/build/template-part/edit/placeholder/index.js.map +0 -1
- package/build/template-part/edit/placeholder/patterns-setup.js +0 -100
- package/build/template-part/edit/placeholder/patterns-setup.js.map +0 -1
- package/build/template-part/edit/selection/index.js +0 -45
- package/build/template-part/edit/selection/index.js.map +0 -1
- package/build/template-part/edit/selection/template-part-previews.js +0 -317
- package/build/template-part/edit/selection/template-part-previews.js.map +0 -1
- package/build-module/navigation/edit/existing-menus-options.js +0 -53
- package/build-module/navigation/edit/existing-menus-options.js.map +0 -1
- package/build-module/navigation/use-convert-classic-menu.js +0 -47
- package/build-module/navigation/use-convert-classic-menu.js.map +0 -1
- package/build-module/template-part/edit/placeholder/index.js +0 -124
- package/build-module/template-part/edit/placeholder/index.js.map +0 -1
- package/build-module/template-part/edit/placeholder/patterns-setup.js +0 -91
- package/build-module/template-part/edit/placeholder/patterns-setup.js.map +0 -1
- package/build-module/template-part/edit/selection/index.js +0 -35
- package/build-module/template-part/edit/selection/index.js.map +0 -1
- package/build-module/template-part/edit/selection/template-part-previews.js +0 -298
- package/build-module/template-part/edit/selection/template-part-previews.js.map +0 -1
- package/src/navigation/edit/existing-menus-options.js +0 -70
- package/src/navigation/use-convert-classic-menu.js +0 -58
- package/src/template-part/edit/placeholder/index.js +0 -172
- package/src/template-part/edit/placeholder/patterns-setup.js +0 -124
- package/src/template-part/edit/selection/index.js +0 -37
- package/src/template-part/edit/selection/template-part-previews.js +0 -372
package/src/index.js
CHANGED
|
@@ -96,7 +96,6 @@ import * as socialLink from './social-link';
|
|
|
96
96
|
import * as socialLinks from './social-links';
|
|
97
97
|
import * as spacer from './spacer';
|
|
98
98
|
import * as table from './table';
|
|
99
|
-
// import * as tableOfContents from './table-of-contents';
|
|
100
99
|
import * as tagCloud from './tag-cloud';
|
|
101
100
|
import * as templatePart from './template-part';
|
|
102
101
|
import * as termDescription from './term-description';
|
|
@@ -145,7 +144,7 @@ export const __experimentalGetCoreBlocks = () => [
|
|
|
145
144
|
buttons,
|
|
146
145
|
calendar,
|
|
147
146
|
categories,
|
|
148
|
-
window.wp && window.wp.oldEditor ? classic : null, // Only add the classic block in WP Context
|
|
147
|
+
window.wp && window.wp.oldEditor ? classic : null, // Only add the classic block in WP Context.
|
|
149
148
|
code,
|
|
150
149
|
column,
|
|
151
150
|
columns,
|
|
@@ -205,7 +204,6 @@ export const __experimentalGetCoreBlocks = () => [
|
|
|
205
204
|
logInOut,
|
|
206
205
|
termDescription,
|
|
207
206
|
queryTitle,
|
|
208
|
-
postAuthorName,
|
|
209
207
|
postAuthorBiography,
|
|
210
208
|
];
|
|
211
209
|
|
|
@@ -251,6 +249,7 @@ export const __experimentalRegisterExperimentalCoreBlocks = process.env
|
|
|
251
249
|
[
|
|
252
250
|
// Experimental blocks.
|
|
253
251
|
homeLink,
|
|
252
|
+
postAuthorName,
|
|
254
253
|
|
|
255
254
|
// Full Site Editing blocks.
|
|
256
255
|
...( enableFSEBlocks
|
package/src/index.native.js
CHANGED
|
@@ -135,7 +135,7 @@ export const registerBlock = ( block ) => {
|
|
|
135
135
|
{
|
|
136
136
|
name,
|
|
137
137
|
...metadata,
|
|
138
|
-
// Gradients support only available for blocks listed in ALLOWED_BLOCKS_GRADIENT_SUPPORT
|
|
138
|
+
// Gradients support only available for blocks listed in ALLOWED_BLOCKS_GRADIENT_SUPPORT.
|
|
139
139
|
...( ! ALLOWED_BLOCKS_GRADIENT_SUPPORT.includes( name ) &&
|
|
140
140
|
supports?.color?.gradients
|
|
141
141
|
? {
|
|
@@ -171,7 +171,7 @@ const registerBlockVariations = ( block ) => {
|
|
|
171
171
|
} );
|
|
172
172
|
};
|
|
173
173
|
|
|
174
|
-
//
|
|
174
|
+
// Only enable code block for development
|
|
175
175
|
// eslint-disable-next-line no-undef
|
|
176
176
|
const devOnly = ( block ) => ( !! __DEV__ ? block : null );
|
|
177
177
|
|
package/src/latest-posts/edit.js
CHANGED
|
@@ -480,6 +480,7 @@ export default function LatestPostsEdit( { attributes, setAttributes } ) {
|
|
|
480
480
|
<div className={ imageClasses }>
|
|
481
481
|
{ addLinkToFeaturedImage ? (
|
|
482
482
|
<a
|
|
483
|
+
className="wp-block-latest-posts__post-title"
|
|
483
484
|
href={ post.link }
|
|
484
485
|
rel="noreferrer noopener"
|
|
485
486
|
>
|
package/src/media-text/edit.js
CHANGED
|
@@ -29,6 +29,7 @@ import {
|
|
|
29
29
|
ExternalLink,
|
|
30
30
|
FocalPointPicker,
|
|
31
31
|
} from '@wordpress/components';
|
|
32
|
+
import { isBlobURL, getBlobTypeByURL } from '@wordpress/blob';
|
|
32
33
|
import { pullLeft, pullRight } from '@wordpress/icons';
|
|
33
34
|
import { store as coreStore } from '@wordpress/core-data';
|
|
34
35
|
|
|
@@ -72,9 +73,26 @@ function attributesFromMedia( {
|
|
|
72
73
|
setAttributes,
|
|
73
74
|
} ) {
|
|
74
75
|
return ( media ) => {
|
|
76
|
+
if ( ! media || ! media.url ) {
|
|
77
|
+
setAttributes( {
|
|
78
|
+
mediaAlt: undefined,
|
|
79
|
+
mediaId: undefined,
|
|
80
|
+
mediaType: undefined,
|
|
81
|
+
mediaUrl: undefined,
|
|
82
|
+
mediaLink: undefined,
|
|
83
|
+
href: undefined,
|
|
84
|
+
focalPoint: undefined,
|
|
85
|
+
} );
|
|
86
|
+
return;
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
if ( isBlobURL( media.url ) ) {
|
|
90
|
+
media.type = getBlobTypeByURL( media.url );
|
|
91
|
+
}
|
|
92
|
+
|
|
75
93
|
let mediaType;
|
|
76
94
|
let src;
|
|
77
|
-
//
|
|
95
|
+
// For media selections originated from a file upload.
|
|
78
96
|
if ( media.media_type ) {
|
|
79
97
|
if ( media.media_type === 'image' ) {
|
|
80
98
|
mediaType = 'image';
|
|
@@ -84,7 +102,7 @@ function attributesFromMedia( {
|
|
|
84
102
|
mediaType = 'video';
|
|
85
103
|
}
|
|
86
104
|
} else {
|
|
87
|
-
//
|
|
105
|
+
// For media selections originated from existing files in the media library.
|
|
88
106
|
mediaType = media.type;
|
|
89
107
|
}
|
|
90
108
|
|
|
@@ -82,7 +82,7 @@ class MediaTextEdit extends Component {
|
|
|
82
82
|
|
|
83
83
|
let mediaType;
|
|
84
84
|
let src;
|
|
85
|
-
//
|
|
85
|
+
// For media selections originated from a file upload.
|
|
86
86
|
if ( media.media_type ) {
|
|
87
87
|
if ( media.media_type === 'image' ) {
|
|
88
88
|
mediaType = 'image';
|
|
@@ -92,7 +92,7 @@ class MediaTextEdit extends Component {
|
|
|
92
92
|
mediaType = 'video';
|
|
93
93
|
}
|
|
94
94
|
} else {
|
|
95
|
-
//
|
|
95
|
+
// For media selections originated from existing files in the media library.
|
|
96
96
|
mediaType = media.type;
|
|
97
97
|
}
|
|
98
98
|
|
|
@@ -73,7 +73,7 @@ class MediaContainer extends Component {
|
|
|
73
73
|
const { mediaId, mediaUrl } = this.props;
|
|
74
74
|
|
|
75
75
|
// Make sure we mark any temporary images as failed if they failed while
|
|
76
|
-
// the editor wasn't open
|
|
76
|
+
// the editor wasn't open.
|
|
77
77
|
if ( mediaId && mediaUrl && getProtocol( mediaUrl ) === 'file:' ) {
|
|
78
78
|
mediaUploadSync();
|
|
79
79
|
}
|
|
@@ -173,7 +173,7 @@ export class UnsupportedBlockEdit extends Component {
|
|
|
173
173
|
// On iOS, onModalHide is called when the controller is still part of the hierarchy.
|
|
174
174
|
// A small delay will ensure that the controller has already been removed.
|
|
175
175
|
this.timeout = setTimeout( () => {
|
|
176
|
-
//
|
|
176
|
+
// For the Classic block, the content is kept in the `content` attribute.
|
|
177
177
|
const content =
|
|
178
178
|
blockName === 'core/freeform'
|
|
179
179
|
? attributes.content
|
|
@@ -15,21 +15,21 @@ import { setLocaleData } from '@wordpress/i18n';
|
|
|
15
15
|
import { registerCoreBlocks } from '../..';
|
|
16
16
|
|
|
17
17
|
beforeAll( () => {
|
|
18
|
-
// Mock translations
|
|
18
|
+
// Mock translations.
|
|
19
19
|
setLocaleData( {
|
|
20
20
|
'block title\u0004Table': [ 'Tabla' ],
|
|
21
21
|
"'%s' is not fully-supported": [ '«%s» no es totalmente compatible' ],
|
|
22
22
|
} );
|
|
23
23
|
|
|
24
|
-
// Register all core blocks
|
|
24
|
+
// Register all core blocks.
|
|
25
25
|
registerCoreBlocks();
|
|
26
26
|
} );
|
|
27
27
|
|
|
28
28
|
afterAll( () => {
|
|
29
|
-
// Clean up translations
|
|
29
|
+
// Clean up translations.
|
|
30
30
|
setLocaleData( {} );
|
|
31
31
|
|
|
32
|
-
// Clean up registered blocks
|
|
32
|
+
// Clean up registered blocks.
|
|
33
33
|
getBlockTypes().forEach( ( block ) => {
|
|
34
34
|
unregisterBlockType( block.name );
|
|
35
35
|
} );
|
|
@@ -49,7 +49,7 @@ describe( 'Missing block', () => {
|
|
|
49
49
|
const testInstance = getTestComponentWithContent();
|
|
50
50
|
const bottomSheet = testInstance.UNSAFE_getByType( BottomSheet );
|
|
51
51
|
const children = bottomSheet.props.children[ 0 ].props.children;
|
|
52
|
-
expect( children.length ).toBe( 3 ); // 4 children in the bottom sheet: the icon, the "isn't yet supported" title and the "We are working hard..." message
|
|
52
|
+
expect( children.length ).toBe( 3 ); // 4 children in the bottom sheet: the icon, the "isn't yet supported" title and the "We are working hard..." message.
|
|
53
53
|
expect( children[ 0 ].props.icon ).toBe( help );
|
|
54
54
|
} );
|
|
55
55
|
|
|
@@ -66,7 +66,7 @@ describe( 'Missing block', () => {
|
|
|
66
66
|
|
|
67
67
|
describe( 'Unsupported block editor (UBE)', () => {
|
|
68
68
|
beforeEach( () => {
|
|
69
|
-
// By default we set the web editor as available
|
|
69
|
+
// By default we set the web editor as available.
|
|
70
70
|
storeConfig.selectors.getSettings.mockReturnValue( {
|
|
71
71
|
unsupportedBlockEditor: true,
|
|
72
72
|
} );
|
package/src/more/transforms.js
CHANGED
|
@@ -15,11 +15,11 @@ const transforms = {
|
|
|
15
15
|
transform( node ) {
|
|
16
16
|
const { customText, noTeaser } = node.dataset;
|
|
17
17
|
const attrs = {};
|
|
18
|
-
// Don't copy unless defined and not an empty string
|
|
18
|
+
// Don't copy unless defined and not an empty string.
|
|
19
19
|
if ( customText ) {
|
|
20
20
|
attrs.customText = customText;
|
|
21
21
|
}
|
|
22
|
-
// Special handling for boolean
|
|
22
|
+
// Special handling for boolean.
|
|
23
23
|
if ( noTeaser === '' ) {
|
|
24
24
|
attrs.noTeaser = true;
|
|
25
25
|
}
|
|
@@ -35,10 +35,11 @@ import {
|
|
|
35
35
|
__experimentalToggleGroupControl as ToggleGroupControl,
|
|
36
36
|
__experimentalToggleGroupControlOption as ToggleGroupControlOption,
|
|
37
37
|
ToolbarGroup,
|
|
38
|
-
ToolbarDropdownMenu,
|
|
39
38
|
Button,
|
|
39
|
+
Spinner,
|
|
40
40
|
} from '@wordpress/components';
|
|
41
41
|
import { __ } from '@wordpress/i18n';
|
|
42
|
+
import { speak } from '@wordpress/a11y';
|
|
42
43
|
|
|
43
44
|
/**
|
|
44
45
|
* Internal dependencies
|
|
@@ -47,7 +48,6 @@ import useListViewModal from './use-list-view-modal';
|
|
|
47
48
|
import useNavigationMenu from '../use-navigation-menu';
|
|
48
49
|
import useNavigationEntities from '../use-navigation-entities';
|
|
49
50
|
import Placeholder from './placeholder';
|
|
50
|
-
import PlaceholderPreview from './placeholder/placeholder-preview';
|
|
51
51
|
import ResponsiveWrapper from './responsive-wrapper';
|
|
52
52
|
import NavigationInnerBlocks from './inner-blocks';
|
|
53
53
|
import NavigationMenuSelector from './navigation-menu-selector';
|
|
@@ -56,6 +56,16 @@ import UnsavedInnerBlocks from './unsaved-inner-blocks';
|
|
|
56
56
|
import NavigationMenuDeleteControl from './navigation-menu-delete-control';
|
|
57
57
|
import useNavigationNotice from './use-navigation-notice';
|
|
58
58
|
import OverlayMenuIcon from './overlay-menu-icon';
|
|
59
|
+
import useConvertClassicToBlockMenu, {
|
|
60
|
+
CLASSIC_MENU_CONVERSION_ERROR,
|
|
61
|
+
CLASSIC_MENU_CONVERSION_PENDING,
|
|
62
|
+
CLASSIC_MENU_CONVERSION_SUCCESS,
|
|
63
|
+
} from './use-convert-classic-menu-to-block-menu';
|
|
64
|
+
import useCreateNavigationMenu, {
|
|
65
|
+
CREATE_NAVIGATION_MENU_ERROR,
|
|
66
|
+
CREATE_NAVIGATION_MENU_PENDING,
|
|
67
|
+
CREATE_NAVIGATION_MENU_SUCCESS,
|
|
68
|
+
} from './use-create-navigation-menu';
|
|
59
69
|
|
|
60
70
|
const EMPTY_ARRAY = [];
|
|
61
71
|
|
|
@@ -157,6 +167,51 @@ function Navigation( {
|
|
|
157
167
|
// the Select Menu dropdown.
|
|
158
168
|
useNavigationEntities();
|
|
159
169
|
|
|
170
|
+
const [
|
|
171
|
+
showNavigationMenuCreateNotice,
|
|
172
|
+
hideNavigationMenuCreateNotice,
|
|
173
|
+
] = useNavigationNotice( {
|
|
174
|
+
name: 'block-library/core/navigation/create',
|
|
175
|
+
} );
|
|
176
|
+
|
|
177
|
+
const {
|
|
178
|
+
create: createNavigationMenu,
|
|
179
|
+
status: createNavigationMenuStatus,
|
|
180
|
+
error: createNavigationMenuError,
|
|
181
|
+
value: createNavigationMenuPost,
|
|
182
|
+
} = useCreateNavigationMenu( clientId );
|
|
183
|
+
|
|
184
|
+
const isCreatingNavigationMenu =
|
|
185
|
+
createNavigationMenuStatus === CREATE_NAVIGATION_MENU_PENDING;
|
|
186
|
+
|
|
187
|
+
useEffect( () => {
|
|
188
|
+
hideNavigationMenuCreateNotice();
|
|
189
|
+
|
|
190
|
+
if ( createNavigationMenuStatus === CREATE_NAVIGATION_MENU_PENDING ) {
|
|
191
|
+
speak( __( `Creating Navigation Menu.` ) );
|
|
192
|
+
}
|
|
193
|
+
|
|
194
|
+
if ( createNavigationMenuStatus === CREATE_NAVIGATION_MENU_SUCCESS ) {
|
|
195
|
+
setRef( createNavigationMenuPost.id );
|
|
196
|
+
selectBlock( clientId );
|
|
197
|
+
|
|
198
|
+
showNavigationMenuCreateNotice(
|
|
199
|
+
__( `Navigation Menu successfully created.` )
|
|
200
|
+
);
|
|
201
|
+
}
|
|
202
|
+
|
|
203
|
+
if ( createNavigationMenuStatus === CREATE_NAVIGATION_MENU_ERROR ) {
|
|
204
|
+
showNavigationMenuCreateNotice(
|
|
205
|
+
__( 'Failed to create Navigation Menu.' )
|
|
206
|
+
);
|
|
207
|
+
}
|
|
208
|
+
}, [
|
|
209
|
+
createNavigationMenu,
|
|
210
|
+
createNavigationMenuStatus,
|
|
211
|
+
createNavigationMenuError,
|
|
212
|
+
createNavigationMenuPost,
|
|
213
|
+
] );
|
|
214
|
+
|
|
160
215
|
const {
|
|
161
216
|
hasUncontrolledInnerBlocks,
|
|
162
217
|
uncontrolledInnerBlocks,
|
|
@@ -173,8 +228,7 @@ function Navigation( {
|
|
|
173
228
|
// introduce a selector like `getUncontrolledInnerBlocks`, just in
|
|
174
229
|
// case `getBlock` is fixed.
|
|
175
230
|
const _uncontrolledInnerBlocks = getBlock( clientId ).innerBlocks;
|
|
176
|
-
const _hasUncontrolledInnerBlocks =
|
|
177
|
-
_uncontrolledInnerBlocks?.length;
|
|
231
|
+
const _hasUncontrolledInnerBlocks = !! _uncontrolledInnerBlocks?.length;
|
|
178
232
|
const _controlledInnerBlocks = _hasUncontrolledInnerBlocks
|
|
179
233
|
? EMPTY_ARRAY
|
|
180
234
|
: getBlocks( clientId );
|
|
@@ -206,10 +260,6 @@ function Navigation( {
|
|
|
206
260
|
|
|
207
261
|
const isWithinUnassignedArea = !! navigationArea && ! ref;
|
|
208
262
|
|
|
209
|
-
const [ isPlaceholderShown, setIsPlaceholderShown ] = useState(
|
|
210
|
-
! hasUncontrolledInnerBlocks || isWithinUnassignedArea
|
|
211
|
-
);
|
|
212
|
-
|
|
213
263
|
const [ isResponsiveMenuOpen, setResponsiveMenuVisibility ] = useState(
|
|
214
264
|
false
|
|
215
265
|
);
|
|
@@ -219,16 +269,15 @@ function Navigation( {
|
|
|
219
269
|
const {
|
|
220
270
|
isNavigationMenuResolved,
|
|
221
271
|
isNavigationMenuMissing,
|
|
222
|
-
canSwitchNavigationMenu,
|
|
223
|
-
hasResolvedNavigationMenus,
|
|
224
272
|
navigationMenus,
|
|
225
273
|
navigationMenu,
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
274
|
+
canUserUpdateNavigationMenu,
|
|
275
|
+
hasResolvedCanUserUpdateNavigationMenu,
|
|
276
|
+
canUserDeleteNavigationMenu,
|
|
277
|
+
hasResolvedCanUserDeleteNavigationMenu,
|
|
278
|
+
canUserCreateNavigationMenu,
|
|
279
|
+
isResolvingCanUserCreateNavigationMenu,
|
|
280
|
+
hasResolvedCanUserCreateNavigationMenu,
|
|
232
281
|
} = useNavigationMenu( ref );
|
|
233
282
|
|
|
234
283
|
const navRef = useRef();
|
|
@@ -238,9 +287,45 @@ function Navigation( {
|
|
|
238
287
|
clientId
|
|
239
288
|
);
|
|
240
289
|
|
|
290
|
+
const {
|
|
291
|
+
convert,
|
|
292
|
+
status: classicMenuConversionStatus,
|
|
293
|
+
error: classicMenuConversionError,
|
|
294
|
+
value: classicMenuConversionResult,
|
|
295
|
+
} = useConvertClassicToBlockMenu( clientId );
|
|
296
|
+
|
|
297
|
+
const isConvertingClassicMenu =
|
|
298
|
+
classicMenuConversionStatus === CLASSIC_MENU_CONVERSION_PENDING;
|
|
299
|
+
|
|
300
|
+
// The standard HTML5 tag for the block wrapper.
|
|
301
|
+
const TagName = 'nav';
|
|
302
|
+
|
|
303
|
+
// "placeholder" shown if:
|
|
304
|
+
// - there is no ref attribute pointing to a Navigation Post.
|
|
305
|
+
// - there is no classic menu conversion process in progress.
|
|
306
|
+
// - there is no menu creation process in progress.
|
|
307
|
+
// - there are no uncontrolled blocks.
|
|
308
|
+
// - (legacy) there is a Navigation Area without a ref attribute pointing to a Navigation Post.
|
|
309
|
+
const isPlaceholder =
|
|
310
|
+
! ref &&
|
|
311
|
+
! isCreatingNavigationMenu &&
|
|
312
|
+
! isConvertingClassicMenu &&
|
|
313
|
+
( ! hasUncontrolledInnerBlocks || isWithinUnassignedArea );
|
|
314
|
+
|
|
241
315
|
const isEntityAvailable =
|
|
242
316
|
! isNavigationMenuMissing && isNavigationMenuResolved;
|
|
243
317
|
|
|
318
|
+
// "loading" state:
|
|
319
|
+
// - there is a menu creation process in progress.
|
|
320
|
+
// - there is a classic menu conversion process in progress.
|
|
321
|
+
// OR
|
|
322
|
+
// - there is a ref attribute pointing to a Navigation Post
|
|
323
|
+
// - the Navigation Post isn't available (hasn't resolved) yet.
|
|
324
|
+
const isLoading =
|
|
325
|
+
isCreatingNavigationMenu ||
|
|
326
|
+
isConvertingClassicMenu ||
|
|
327
|
+
!! ( ref && ! isEntityAvailable && ! isConvertingClassicMenu );
|
|
328
|
+
|
|
244
329
|
const blockProps = useBlockProps( {
|
|
245
330
|
ref: navRef,
|
|
246
331
|
className: classnames( className, {
|
|
@@ -302,6 +387,42 @@ function Navigation( {
|
|
|
302
387
|
] = useState();
|
|
303
388
|
const [ detectedOverlayColor, setDetectedOverlayColor ] = useState();
|
|
304
389
|
|
|
390
|
+
const [
|
|
391
|
+
showClassicMenuConversionErrorNotice,
|
|
392
|
+
hideClassicMenuConversionErrorNotice,
|
|
393
|
+
] = useNavigationNotice( {
|
|
394
|
+
name: 'block-library/core/navigation/classic-menu-conversion/error',
|
|
395
|
+
} );
|
|
396
|
+
|
|
397
|
+
function handleUpdateMenu( menuId ) {
|
|
398
|
+
setRef( menuId );
|
|
399
|
+
selectBlock( clientId );
|
|
400
|
+
}
|
|
401
|
+
|
|
402
|
+
useEffect( () => {
|
|
403
|
+
if ( classicMenuConversionStatus === CLASSIC_MENU_CONVERSION_PENDING ) {
|
|
404
|
+
speak( __( 'Classic menu importing.' ) );
|
|
405
|
+
}
|
|
406
|
+
|
|
407
|
+
if (
|
|
408
|
+
classicMenuConversionStatus === CLASSIC_MENU_CONVERSION_SUCCESS &&
|
|
409
|
+
classicMenuConversionResult
|
|
410
|
+
) {
|
|
411
|
+
handleUpdateMenu( classicMenuConversionResult?.id );
|
|
412
|
+
hideClassicMenuConversionErrorNotice();
|
|
413
|
+
speak( __( 'Classic menu imported successfully.' ) );
|
|
414
|
+
}
|
|
415
|
+
|
|
416
|
+
if ( classicMenuConversionStatus === CLASSIC_MENU_CONVERSION_ERROR ) {
|
|
417
|
+
showClassicMenuConversionErrorNotice( classicMenuConversionError );
|
|
418
|
+
speak( __( 'Classic menu import failed.' ) );
|
|
419
|
+
}
|
|
420
|
+
}, [
|
|
421
|
+
classicMenuConversionStatus,
|
|
422
|
+
classicMenuConversionResult,
|
|
423
|
+
classicMenuConversionError,
|
|
424
|
+
] );
|
|
425
|
+
|
|
305
426
|
// Spacer block needs orientation from context. This is a patch until
|
|
306
427
|
// https://github.com/WordPress/gutenberg/issues/36197 is addressed.
|
|
307
428
|
useEffect( () => {
|
|
@@ -332,11 +453,6 @@ function Navigation( {
|
|
|
332
453
|
}
|
|
333
454
|
} );
|
|
334
455
|
|
|
335
|
-
// Hide the placeholder if an navigation menu entity has loaded.
|
|
336
|
-
useEffect( () => {
|
|
337
|
-
setIsPlaceholderShown( ! isEntityAvailable );
|
|
338
|
-
}, [ isEntityAvailable ] );
|
|
339
|
-
|
|
340
456
|
const [ showCantEditNotice, hideCantEditNotice ] = useNavigationNotice( {
|
|
341
457
|
name: 'block-library/core/navigation/permissions/update',
|
|
342
458
|
message: __(
|
|
@@ -361,16 +477,16 @@ function Navigation( {
|
|
|
361
477
|
|
|
362
478
|
if ( isSelected || isInnerBlockSelected ) {
|
|
363
479
|
if (
|
|
364
|
-
|
|
365
|
-
!
|
|
480
|
+
hasResolvedCanUserUpdateNavigationMenu &&
|
|
481
|
+
! canUserUpdateNavigationMenu
|
|
366
482
|
) {
|
|
367
483
|
showCantEditNotice();
|
|
368
484
|
}
|
|
369
485
|
|
|
370
486
|
if (
|
|
371
487
|
! ref &&
|
|
372
|
-
|
|
373
|
-
!
|
|
488
|
+
hasResolvedCanUserCreateNavigationMenu &&
|
|
489
|
+
! canUserCreateNavigationMenu
|
|
374
490
|
) {
|
|
375
491
|
showCantCreateNotice();
|
|
376
492
|
}
|
|
@@ -378,14 +494,33 @@ function Navigation( {
|
|
|
378
494
|
}, [
|
|
379
495
|
isSelected,
|
|
380
496
|
isInnerBlockSelected,
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
497
|
+
canUserUpdateNavigationMenu,
|
|
498
|
+
hasResolvedCanUserUpdateNavigationMenu,
|
|
499
|
+
canUserCreateNavigationMenu,
|
|
500
|
+
hasResolvedCanUserCreateNavigationMenu,
|
|
385
501
|
ref,
|
|
386
502
|
] );
|
|
387
503
|
|
|
388
|
-
const
|
|
504
|
+
const handleSelectNavigation = useCallback(
|
|
505
|
+
( navPostOrClassicMenu ) => {
|
|
506
|
+
if ( ! navPostOrClassicMenu ) {
|
|
507
|
+
return;
|
|
508
|
+
}
|
|
509
|
+
|
|
510
|
+
const isClassicMenu = navPostOrClassicMenu.hasOwnProperty(
|
|
511
|
+
'auto_add'
|
|
512
|
+
);
|
|
513
|
+
|
|
514
|
+
if ( isClassicMenu ) {
|
|
515
|
+
convert( navPostOrClassicMenu.id, navPostOrClassicMenu.name );
|
|
516
|
+
} else {
|
|
517
|
+
handleUpdateMenu( navPostOrClassicMenu.id );
|
|
518
|
+
}
|
|
519
|
+
},
|
|
520
|
+
[ convert, handleUpdateMenu ]
|
|
521
|
+
);
|
|
522
|
+
|
|
523
|
+
const resetToEmptyBlock = useCallback( () => {
|
|
389
524
|
registry.batch( () => {
|
|
390
525
|
if ( navigationArea ) {
|
|
391
526
|
setAreaMenu( 0 );
|
|
@@ -396,7 +531,6 @@ function Navigation( {
|
|
|
396
531
|
if ( ! ref ) {
|
|
397
532
|
replaceInnerBlocks( clientId, [] );
|
|
398
533
|
}
|
|
399
|
-
setIsPlaceholderShown( true );
|
|
400
534
|
} );
|
|
401
535
|
}, [ clientId, ref ] );
|
|
402
536
|
|
|
@@ -408,7 +542,7 @@ function Navigation( {
|
|
|
408
542
|
const hasUnsavedBlocks = hasUncontrolledInnerBlocks && ! isEntityAvailable;
|
|
409
543
|
if ( hasUnsavedBlocks ) {
|
|
410
544
|
return (
|
|
411
|
-
<
|
|
545
|
+
<TagName { ...blockProps }>
|
|
412
546
|
<ResponsiveWrapper
|
|
413
547
|
id={ clientId }
|
|
414
548
|
onToggle={ setResponsiveMenuVisibility }
|
|
@@ -435,7 +569,7 @@ function Navigation( {
|
|
|
435
569
|
} }
|
|
436
570
|
/>
|
|
437
571
|
</ResponsiveWrapper>
|
|
438
|
-
</
|
|
572
|
+
</TagName>
|
|
439
573
|
);
|
|
440
574
|
}
|
|
441
575
|
|
|
@@ -448,7 +582,7 @@ function Navigation( {
|
|
|
448
582
|
{ __(
|
|
449
583
|
'Navigation menu has been deleted or is unavailable. '
|
|
450
584
|
) }
|
|
451
|
-
<Button onClick={
|
|
585
|
+
<Button onClick={ resetToEmptyBlock } variant="link">
|
|
452
586
|
{ __( 'Create a new menu?' ) }
|
|
453
587
|
</Button>
|
|
454
588
|
</Warning>
|
|
@@ -477,34 +611,39 @@ function Navigation( {
|
|
|
477
611
|
{ open: overlayMenuPreview }
|
|
478
612
|
);
|
|
479
613
|
|
|
614
|
+
if ( isPlaceholder ) {
|
|
615
|
+
return (
|
|
616
|
+
<TagName { ...blockProps }>
|
|
617
|
+
<PlaceholderComponent
|
|
618
|
+
isSelected={ isSelected }
|
|
619
|
+
currentMenuId={ ref }
|
|
620
|
+
clientId={ clientId }
|
|
621
|
+
canUserCreateNavigationMenu={ canUserCreateNavigationMenu }
|
|
622
|
+
isResolvingCanUserCreateNavigationMenu={
|
|
623
|
+
isResolvingCanUserCreateNavigationMenu
|
|
624
|
+
}
|
|
625
|
+
onFinish={ handleSelectNavigation }
|
|
626
|
+
onCreateEmpty={ () => createNavigationMenu( '', [] ) }
|
|
627
|
+
/>
|
|
628
|
+
</TagName>
|
|
629
|
+
);
|
|
630
|
+
}
|
|
631
|
+
|
|
480
632
|
return (
|
|
481
633
|
<EntityProvider kind="postType" type="wp_navigation" id={ ref }>
|
|
482
634
|
<RecursionProvider>
|
|
483
635
|
<BlockControls>
|
|
484
636
|
{ ! isDraftNavigationMenu && isEntityAvailable && (
|
|
485
|
-
<ToolbarGroup>
|
|
486
|
-
<
|
|
487
|
-
|
|
488
|
-
|
|
489
|
-
|
|
490
|
-
|
|
491
|
-
|
|
492
|
-
|
|
493
|
-
|
|
494
|
-
|
|
495
|
-
setRef( id );
|
|
496
|
-
onClose();
|
|
497
|
-
} }
|
|
498
|
-
onCreateNew={ startWithEmptyMenu }
|
|
499
|
-
canUserCreateNavigation={
|
|
500
|
-
canUserCreateNavigation
|
|
501
|
-
}
|
|
502
|
-
canUserSwitchNavigation={
|
|
503
|
-
canSwitchNavigationMenu
|
|
504
|
-
}
|
|
505
|
-
/>
|
|
506
|
-
) }
|
|
507
|
-
</ToolbarDropdownMenu>
|
|
637
|
+
<ToolbarGroup className="wp-block-navigation__toolbar-menu-selector">
|
|
638
|
+
<NavigationMenuSelector
|
|
639
|
+
currentMenuId={ ref }
|
|
640
|
+
clientId={ clientId }
|
|
641
|
+
onSelect={ handleSelectNavigation }
|
|
642
|
+
onCreateNew={ resetToEmptyBlock }
|
|
643
|
+
/* translators: %s: The name of a menu. */
|
|
644
|
+
actionLabel={ __( "Switch to '%s'" ) }
|
|
645
|
+
showManageActions
|
|
646
|
+
/>
|
|
508
647
|
</ToolbarGroup>
|
|
509
648
|
) }
|
|
510
649
|
<ToolbarGroup>{ listViewToolbarButton }</ToolbarGroup>
|
|
@@ -648,41 +787,27 @@ function Navigation( {
|
|
|
648
787
|
</InspectorControls>
|
|
649
788
|
{ isEntityAvailable && (
|
|
650
789
|
<InspectorControls __experimentalGroup="advanced">
|
|
651
|
-
{
|
|
652
|
-
|
|
790
|
+
{ hasResolvedCanUserUpdateNavigationMenu &&
|
|
791
|
+
canUserUpdateNavigationMenu && (
|
|
653
792
|
<NavigationMenuNameControl />
|
|
654
793
|
) }
|
|
655
|
-
{
|
|
656
|
-
|
|
794
|
+
{ hasResolvedCanUserDeleteNavigationMenu &&
|
|
795
|
+
canUserDeleteNavigationMenu && (
|
|
657
796
|
<NavigationMenuDeleteControl
|
|
658
|
-
onDelete={
|
|
797
|
+
onDelete={ resetToEmptyBlock }
|
|
659
798
|
/>
|
|
660
799
|
) }
|
|
661
800
|
</InspectorControls>
|
|
662
801
|
) }
|
|
663
|
-
|
|
664
|
-
|
|
665
|
-
|
|
666
|
-
|
|
667
|
-
|
|
668
|
-
|
|
669
|
-
|
|
670
|
-
|
|
671
|
-
|
|
672
|
-
} }
|
|
673
|
-
canSwitchNavigationMenu={ canSwitchNavigationMenu }
|
|
674
|
-
hasResolvedNavigationMenus={
|
|
675
|
-
hasResolvedNavigationMenus
|
|
676
|
-
}
|
|
677
|
-
clientId={ clientId }
|
|
678
|
-
canUserCreateNavigation={ canUserCreateNavigation }
|
|
679
|
-
/>
|
|
680
|
-
) }
|
|
681
|
-
{ ! hasResolvedCanUserCreateNavigation ||
|
|
682
|
-
( ! isEntityAvailable && ! isPlaceholderShown && (
|
|
683
|
-
<PlaceholderPreview isLoading />
|
|
684
|
-
) ) }
|
|
685
|
-
{ ! isPlaceholderShown && (
|
|
802
|
+
|
|
803
|
+
{ isLoading && (
|
|
804
|
+
<TagName { ...blockProps }>
|
|
805
|
+
<Spinner className="wp-block-navigation__loading-indicator" />
|
|
806
|
+
</TagName>
|
|
807
|
+
) }
|
|
808
|
+
|
|
809
|
+
{ ! isLoading && (
|
|
810
|
+
<TagName { ...blockProps }>
|
|
686
811
|
<ResponsiveWrapper
|
|
687
812
|
id={ clientId }
|
|
688
813
|
onToggle={ setResponsiveMenuVisibility }
|
|
@@ -696,7 +821,6 @@ function Navigation( {
|
|
|
696
821
|
>
|
|
697
822
|
{ isEntityAvailable && (
|
|
698
823
|
<NavigationInnerBlocks
|
|
699
|
-
isVisible={ ! isPlaceholderShown }
|
|
700
824
|
clientId={ clientId }
|
|
701
825
|
hasCustomPlaceholder={
|
|
702
826
|
!! CustomPlaceholder
|
|
@@ -705,8 +829,8 @@ function Navigation( {
|
|
|
705
829
|
/>
|
|
706
830
|
) }
|
|
707
831
|
</ResponsiveWrapper>
|
|
708
|
-
|
|
709
|
-
|
|
832
|
+
</TagName>
|
|
833
|
+
) }
|
|
710
834
|
</RecursionProvider>
|
|
711
835
|
</EntityProvider>
|
|
712
836
|
);
|