@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/gallery/v1/edit.js
CHANGED
|
@@ -245,7 +245,7 @@ function GalleryEdit( props ) {
|
|
|
245
245
|
id: newImageId,
|
|
246
246
|
} );
|
|
247
247
|
|
|
248
|
-
//
|
|
248
|
+
// If the attachment caption is updated.
|
|
249
249
|
if ( attachment && attachment.caption !== newImage.caption ) {
|
|
250
250
|
return newImage.caption;
|
|
251
251
|
}
|
|
@@ -362,7 +362,7 @@ function GalleryEdit( props ) {
|
|
|
362
362
|
}, [] );
|
|
363
363
|
|
|
364
364
|
useEffect( () => {
|
|
365
|
-
// Deselect images when deselecting the block
|
|
365
|
+
// Deselect images when deselecting the block.
|
|
366
366
|
if ( ! isSelected ) {
|
|
367
367
|
setSelectedImage();
|
|
368
368
|
}
|
|
@@ -370,7 +370,7 @@ function GalleryEdit( props ) {
|
|
|
370
370
|
|
|
371
371
|
useEffect( () => {
|
|
372
372
|
// linkTo attribute must be saved so blocks don't break when changing
|
|
373
|
-
// image_default_link_type in options.php
|
|
373
|
+
// image_default_link_type in options.php.
|
|
374
374
|
if ( ! linkTo ) {
|
|
375
375
|
__unstableMarkNextChangeAsNotPersistent();
|
|
376
376
|
setAttributes( {
|
|
@@ -456,7 +456,6 @@ function GalleryEdit( props ) {
|
|
|
456
456
|
) }
|
|
457
457
|
</PanelBody>
|
|
458
458
|
</InspectorControls>
|
|
459
|
-
|
|
460
459
|
{ noticeUI }
|
|
461
460
|
<Gallery
|
|
462
461
|
{ ...props }
|
|
@@ -134,8 +134,8 @@ class GalleryImage extends Component {
|
|
|
134
134
|
} );
|
|
135
135
|
}
|
|
136
136
|
|
|
137
|
-
//
|
|
138
|
-
// the caption is not immediately selected
|
|
137
|
+
// Unselect the caption so when the user selects other image and comeback
|
|
138
|
+
// the caption is not immediately selected.
|
|
139
139
|
if (
|
|
140
140
|
this.state.captionSelected &&
|
|
141
141
|
! isSelected &&
|
|
@@ -318,7 +318,7 @@ class GalleryImage extends Component {
|
|
|
318
318
|
return (
|
|
319
319
|
<TouchableWithoutFeedback
|
|
320
320
|
onPress={ this.onMediaPressed }
|
|
321
|
-
accessible={ ! isSelected } // We need only child views to be accessible after the selection
|
|
321
|
+
accessible={ ! isSelected } // We need only child views to be accessible after the selection.
|
|
322
322
|
accessibilityLabel={ this.accessibilityLabelImageContainer() } // if we don't set this explicitly it reads system provided accessibilityLabels of all child components and those include pretty technical words which don't make sense
|
|
323
323
|
accessibilityRole={ 'imagebutton' } // this makes VoiceOver to read a description of image provided by system on iOS and lets user know this is a button which conveys the message of tappablity
|
|
324
324
|
>
|
|
@@ -77,7 +77,7 @@ export const Gallery = ( props ) => {
|
|
|
77
77
|
if ( isCaptionSelected ) {
|
|
78
78
|
setIsCaptionSelected( false );
|
|
79
79
|
}
|
|
80
|
-
//
|
|
80
|
+
// We need to fully invoke the curried function here.
|
|
81
81
|
onSelectImage( index )();
|
|
82
82
|
};
|
|
83
83
|
};
|
|
@@ -152,7 +152,7 @@ export const Gallery = ( props ) => {
|
|
|
152
152
|
)
|
|
153
153
|
}
|
|
154
154
|
onFocus={ focusGalleryCaption }
|
|
155
|
-
onBlur={ onBlur } //
|
|
155
|
+
onBlur={ onBlur } // Always assign onBlur as props.
|
|
156
156
|
insertBlocksAfter={ insertBlocksAfter }
|
|
157
157
|
/>
|
|
158
158
|
</View>
|
package/src/group/block.json
CHANGED
package/src/group/index.js
CHANGED
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
* WordPress dependencies
|
|
3
3
|
*/
|
|
4
4
|
import { __ } from '@wordpress/i18n';
|
|
5
|
-
import { createBlock } from '@wordpress/blocks';
|
|
6
5
|
import { group as icon } from '@wordpress/icons';
|
|
7
6
|
|
|
8
7
|
/**
|
|
@@ -12,6 +11,7 @@ import deprecated from './deprecated';
|
|
|
12
11
|
import edit from './edit';
|
|
13
12
|
import metadata from './block.json';
|
|
14
13
|
import save from './save';
|
|
14
|
+
import transforms from './transforms';
|
|
15
15
|
import variations from './variations';
|
|
16
16
|
|
|
17
17
|
const { name } = metadata;
|
|
@@ -80,59 +80,7 @@ export const settings = {
|
|
|
80
80
|
},
|
|
81
81
|
],
|
|
82
82
|
},
|
|
83
|
-
transforms
|
|
84
|
-
from: [
|
|
85
|
-
{
|
|
86
|
-
type: 'block',
|
|
87
|
-
isMultiBlock: true,
|
|
88
|
-
blocks: [ '*' ],
|
|
89
|
-
__experimentalConvert( blocks ) {
|
|
90
|
-
// Avoid transforming a single `core/group` Block
|
|
91
|
-
if (
|
|
92
|
-
blocks.length === 1 &&
|
|
93
|
-
blocks[ 0 ].name === 'core/group'
|
|
94
|
-
) {
|
|
95
|
-
return;
|
|
96
|
-
}
|
|
97
|
-
|
|
98
|
-
const alignments = [ 'wide', 'full' ];
|
|
99
|
-
|
|
100
|
-
// Determine the widest setting of all the blocks to be grouped
|
|
101
|
-
const widestAlignment = blocks.reduce(
|
|
102
|
-
( accumulator, block ) => {
|
|
103
|
-
const { align } = block.attributes;
|
|
104
|
-
return alignments.indexOf( align ) >
|
|
105
|
-
alignments.indexOf( accumulator )
|
|
106
|
-
? align
|
|
107
|
-
: accumulator;
|
|
108
|
-
},
|
|
109
|
-
undefined
|
|
110
|
-
);
|
|
111
|
-
|
|
112
|
-
// Clone the Blocks to be Grouped
|
|
113
|
-
// Failing to create new block references causes the original blocks
|
|
114
|
-
// to be replaced in the switchToBlockType call thereby meaning they
|
|
115
|
-
// are removed both from their original location and within the
|
|
116
|
-
// new group block.
|
|
117
|
-
const groupInnerBlocks = blocks.map( ( block ) => {
|
|
118
|
-
return createBlock(
|
|
119
|
-
block.name,
|
|
120
|
-
block.attributes,
|
|
121
|
-
block.innerBlocks
|
|
122
|
-
);
|
|
123
|
-
} );
|
|
124
|
-
|
|
125
|
-
return createBlock(
|
|
126
|
-
'core/group',
|
|
127
|
-
{
|
|
128
|
-
align: widestAlignment,
|
|
129
|
-
},
|
|
130
|
-
groupInnerBlocks
|
|
131
|
-
);
|
|
132
|
-
},
|
|
133
|
-
},
|
|
134
|
-
],
|
|
135
|
-
},
|
|
83
|
+
transforms,
|
|
136
84
|
edit,
|
|
137
85
|
save,
|
|
138
86
|
deprecated,
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* WordPress dependencies
|
|
3
|
+
*/
|
|
4
|
+
import { createBlock } from '@wordpress/blocks';
|
|
5
|
+
|
|
6
|
+
const transforms = {
|
|
7
|
+
from: [
|
|
8
|
+
{
|
|
9
|
+
type: 'block',
|
|
10
|
+
isMultiBlock: true,
|
|
11
|
+
blocks: [ '*' ],
|
|
12
|
+
__experimentalConvert( blocks ) {
|
|
13
|
+
const alignments = [ 'wide', 'full' ];
|
|
14
|
+
|
|
15
|
+
// Determine the widest setting of all the blocks to be grouped
|
|
16
|
+
const widestAlignment = blocks.reduce(
|
|
17
|
+
( accumulator, block ) => {
|
|
18
|
+
const { align } = block.attributes;
|
|
19
|
+
return alignments.indexOf( align ) >
|
|
20
|
+
alignments.indexOf( accumulator )
|
|
21
|
+
? align
|
|
22
|
+
: accumulator;
|
|
23
|
+
},
|
|
24
|
+
undefined
|
|
25
|
+
);
|
|
26
|
+
|
|
27
|
+
// Clone the Blocks to be Grouped
|
|
28
|
+
// Failing to create new block references causes the original blocks
|
|
29
|
+
// to be replaced in the switchToBlockType call thereby meaning they
|
|
30
|
+
// are removed both from their original location and within the
|
|
31
|
+
// new group block.
|
|
32
|
+
const groupInnerBlocks = blocks.map( ( block ) => {
|
|
33
|
+
return createBlock(
|
|
34
|
+
block.name,
|
|
35
|
+
block.attributes,
|
|
36
|
+
block.innerBlocks
|
|
37
|
+
);
|
|
38
|
+
} );
|
|
39
|
+
|
|
40
|
+
return createBlock(
|
|
41
|
+
'core/group',
|
|
42
|
+
{
|
|
43
|
+
align: widestAlignment,
|
|
44
|
+
},
|
|
45
|
+
groupInnerBlocks
|
|
46
|
+
);
|
|
47
|
+
},
|
|
48
|
+
},
|
|
49
|
+
],
|
|
50
|
+
};
|
|
51
|
+
|
|
52
|
+
export default transforms;
|
package/src/heading/edit.js
CHANGED
|
@@ -8,7 +8,7 @@ import classnames from 'classnames';
|
|
|
8
8
|
*/
|
|
9
9
|
import { __ } from '@wordpress/i18n';
|
|
10
10
|
import { useEffect, Platform } from '@wordpress/element';
|
|
11
|
-
import { useDispatch } from '@wordpress/data';
|
|
11
|
+
import { useDispatch, useSelect } from '@wordpress/data';
|
|
12
12
|
import { createBlock, getDefaultBlockName } from '@wordpress/blocks';
|
|
13
13
|
import {
|
|
14
14
|
AlignmentControl,
|
|
@@ -41,6 +41,14 @@ function HeadingEdit( {
|
|
|
41
41
|
style,
|
|
42
42
|
} );
|
|
43
43
|
|
|
44
|
+
const { canGenerateAnchors } = useSelect( ( select ) => {
|
|
45
|
+
const settings = select( blockEditorStore ).getSettings();
|
|
46
|
+
|
|
47
|
+
return {
|
|
48
|
+
canGenerateAnchors: !! settings.__experimentalGenerateAnchors,
|
|
49
|
+
};
|
|
50
|
+
}, [] );
|
|
51
|
+
|
|
44
52
|
const { __unstableMarkNextChangeAsNotPersistent } = useDispatch(
|
|
45
53
|
blockEditorStore
|
|
46
54
|
);
|
|
@@ -48,6 +56,10 @@ function HeadingEdit( {
|
|
|
48
56
|
// Initially set anchor for headings that have content but no anchor set.
|
|
49
57
|
// This is used when transforming a block to heading, or for legacy anchors.
|
|
50
58
|
useEffect( () => {
|
|
59
|
+
if ( ! canGenerateAnchors ) {
|
|
60
|
+
return;
|
|
61
|
+
}
|
|
62
|
+
|
|
51
63
|
if ( ! anchor && content ) {
|
|
52
64
|
// This side-effect should not create an undo level.
|
|
53
65
|
__unstableMarkNextChangeAsNotPersistent();
|
|
@@ -59,14 +71,15 @@ function HeadingEdit( {
|
|
|
59
71
|
|
|
60
72
|
// Remove anchor map when block unmounts.
|
|
61
73
|
return () => setAnchor( clientId, null );
|
|
62
|
-
}, [ content,
|
|
74
|
+
}, [ anchor, content, clientId, canGenerateAnchors ] );
|
|
63
75
|
|
|
64
76
|
const onContentChange = ( value ) => {
|
|
65
77
|
const newAttrs = { content: value };
|
|
66
78
|
if (
|
|
67
|
-
|
|
68
|
-
!
|
|
69
|
-
|
|
79
|
+
canGenerateAnchors &&
|
|
80
|
+
( ! anchor ||
|
|
81
|
+
! value ||
|
|
82
|
+
generateAnchor( clientId, content ) === anchor )
|
|
70
83
|
) {
|
|
71
84
|
newAttrs.anchor = generateAnchor( clientId, value );
|
|
72
85
|
}
|
package/src/home-link/edit.js
CHANGED
package/src/home-link/index.php
CHANGED
|
@@ -138,25 +138,7 @@ function render_block_core_home_link( $attributes, $content, $block ) {
|
|
|
138
138
|
$html .= '>';
|
|
139
139
|
|
|
140
140
|
if ( isset( $attributes['label'] ) ) {
|
|
141
|
-
$html .=
|
|
142
|
-
$attributes['label'],
|
|
143
|
-
array(
|
|
144
|
-
'code' => array(),
|
|
145
|
-
'em' => array(),
|
|
146
|
-
'img' => array(
|
|
147
|
-
'scale' => array(),
|
|
148
|
-
'class' => array(),
|
|
149
|
-
'style' => array(),
|
|
150
|
-
'src' => array(),
|
|
151
|
-
'alt' => array(),
|
|
152
|
-
),
|
|
153
|
-
's' => array(),
|
|
154
|
-
'span' => array(
|
|
155
|
-
'style' => array(),
|
|
156
|
-
),
|
|
157
|
-
'strong' => array(),
|
|
158
|
-
)
|
|
159
|
-
);
|
|
141
|
+
$html .= wp_kses_post( $attributes['label'] );
|
|
160
142
|
}
|
|
161
143
|
|
|
162
144
|
$html .= '</a></li>';
|
package/src/image/deprecated.js
CHANGED
|
@@ -2,11 +2,12 @@
|
|
|
2
2
|
* External dependencies
|
|
3
3
|
*/
|
|
4
4
|
import classnames from 'classnames';
|
|
5
|
+
import { isEmpty } from 'lodash';
|
|
5
6
|
|
|
6
7
|
/**
|
|
7
8
|
* WordPress dependencies
|
|
8
9
|
*/
|
|
9
|
-
import { RichText } from '@wordpress/block-editor';
|
|
10
|
+
import { RichText, useBlockProps } from '@wordpress/block-editor';
|
|
10
11
|
|
|
11
12
|
const blockAttributes = {
|
|
12
13
|
align: {
|
|
@@ -68,7 +69,110 @@ const blockAttributes = {
|
|
|
68
69
|
},
|
|
69
70
|
};
|
|
70
71
|
|
|
72
|
+
const blockSupports = {
|
|
73
|
+
anchor: true,
|
|
74
|
+
color: {
|
|
75
|
+
__experimentalDuotone: 'img',
|
|
76
|
+
text: false,
|
|
77
|
+
background: false,
|
|
78
|
+
},
|
|
79
|
+
__experimentalBorder: {
|
|
80
|
+
radius: true,
|
|
81
|
+
__experimentalDefaultControls: {
|
|
82
|
+
radius: true,
|
|
83
|
+
},
|
|
84
|
+
},
|
|
85
|
+
};
|
|
86
|
+
|
|
71
87
|
const deprecated = [
|
|
88
|
+
{
|
|
89
|
+
attributes: {
|
|
90
|
+
...blockAttributes,
|
|
91
|
+
title: {
|
|
92
|
+
type: 'string',
|
|
93
|
+
source: 'attribute',
|
|
94
|
+
selector: 'img',
|
|
95
|
+
attribute: 'title',
|
|
96
|
+
},
|
|
97
|
+
sizeSlug: {
|
|
98
|
+
type: 'string',
|
|
99
|
+
},
|
|
100
|
+
},
|
|
101
|
+
supports: blockSupports,
|
|
102
|
+
save( { attributes } ) {
|
|
103
|
+
const {
|
|
104
|
+
url,
|
|
105
|
+
alt,
|
|
106
|
+
caption,
|
|
107
|
+
align,
|
|
108
|
+
href,
|
|
109
|
+
rel,
|
|
110
|
+
linkClass,
|
|
111
|
+
width,
|
|
112
|
+
height,
|
|
113
|
+
id,
|
|
114
|
+
linkTarget,
|
|
115
|
+
sizeSlug,
|
|
116
|
+
title,
|
|
117
|
+
} = attributes;
|
|
118
|
+
|
|
119
|
+
const newRel = isEmpty( rel ) ? undefined : rel;
|
|
120
|
+
|
|
121
|
+
const classes = classnames( {
|
|
122
|
+
[ `align${ align }` ]: align,
|
|
123
|
+
[ `size-${ sizeSlug }` ]: sizeSlug,
|
|
124
|
+
'is-resized': width || height,
|
|
125
|
+
} );
|
|
126
|
+
|
|
127
|
+
const image = (
|
|
128
|
+
<img
|
|
129
|
+
src={ url }
|
|
130
|
+
alt={ alt }
|
|
131
|
+
className={ id ? `wp-image-${ id }` : null }
|
|
132
|
+
width={ width }
|
|
133
|
+
height={ height }
|
|
134
|
+
title={ title }
|
|
135
|
+
/>
|
|
136
|
+
);
|
|
137
|
+
|
|
138
|
+
const figure = (
|
|
139
|
+
<>
|
|
140
|
+
{ href ? (
|
|
141
|
+
<a
|
|
142
|
+
className={ linkClass }
|
|
143
|
+
href={ href }
|
|
144
|
+
target={ linkTarget }
|
|
145
|
+
rel={ newRel }
|
|
146
|
+
>
|
|
147
|
+
{ image }
|
|
148
|
+
</a>
|
|
149
|
+
) : (
|
|
150
|
+
image
|
|
151
|
+
) }
|
|
152
|
+
{ ! RichText.isEmpty( caption ) && (
|
|
153
|
+
<RichText.Content
|
|
154
|
+
tagName="figcaption"
|
|
155
|
+
value={ caption }
|
|
156
|
+
/>
|
|
157
|
+
) }
|
|
158
|
+
</>
|
|
159
|
+
);
|
|
160
|
+
|
|
161
|
+
if ( 'left' === align || 'right' === align || 'center' === align ) {
|
|
162
|
+
return (
|
|
163
|
+
<div { ...useBlockProps.save() }>
|
|
164
|
+
<figure className={ classes }>{ figure }</figure>
|
|
165
|
+
</div>
|
|
166
|
+
);
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
return (
|
|
170
|
+
<figure { ...useBlockProps.save( { className: classes } ) }>
|
|
171
|
+
{ figure }
|
|
172
|
+
</figure>
|
|
173
|
+
);
|
|
174
|
+
},
|
|
175
|
+
},
|
|
72
176
|
{
|
|
73
177
|
attributes: blockAttributes,
|
|
74
178
|
save( { attributes } ) {
|
package/src/image/edit.js
CHANGED
|
@@ -171,6 +171,12 @@ export function ImageEdit( {
|
|
|
171
171
|
function onUploadError( message ) {
|
|
172
172
|
noticeOperations.removeAllNotices();
|
|
173
173
|
noticeOperations.createErrorNotice( message );
|
|
174
|
+
setAttributes( {
|
|
175
|
+
src: undefined,
|
|
176
|
+
id: undefined,
|
|
177
|
+
url: undefined,
|
|
178
|
+
} );
|
|
179
|
+
setTemporaryURL( undefined );
|
|
174
180
|
}
|
|
175
181
|
|
|
176
182
|
function onSelectImage( media ) {
|
|
@@ -306,12 +312,7 @@ export function ImageEdit( {
|
|
|
306
312
|
allowedTypes: ALLOWED_MEDIA_TYPES,
|
|
307
313
|
onError: ( message ) => {
|
|
308
314
|
isTemp = false;
|
|
309
|
-
|
|
310
|
-
setAttributes( {
|
|
311
|
-
src: undefined,
|
|
312
|
-
id: undefined,
|
|
313
|
-
url: undefined,
|
|
314
|
-
} );
|
|
315
|
+
onUploadError( message );
|
|
315
316
|
},
|
|
316
317
|
} );
|
|
317
318
|
}
|
package/src/image/edit.native.js
CHANGED
|
@@ -88,7 +88,7 @@ function LinkSettings( {
|
|
|
88
88
|
const route = useRoute();
|
|
89
89
|
const { href: url, label, linkDestination, linkTarget, rel } = attributes;
|
|
90
90
|
|
|
91
|
-
// Persist attributes passed from child screen
|
|
91
|
+
// Persist attributes passed from child screen.
|
|
92
92
|
useEffect( () => {
|
|
93
93
|
const { inputValue: newUrl } = route.params || {};
|
|
94
94
|
|
|
@@ -186,6 +186,7 @@ export class ImageEdit extends Component {
|
|
|
186
186
|
this.state = {
|
|
187
187
|
isCaptionSelected: false,
|
|
188
188
|
uploadStatus: UPLOAD_STATE_IDLE,
|
|
189
|
+
isAnimatedGif: false,
|
|
189
190
|
};
|
|
190
191
|
|
|
191
192
|
this.replacedFeaturedImage = false;
|
|
@@ -225,7 +226,7 @@ export class ImageEdit extends Component {
|
|
|
225
226
|
console.warn( 'Attributes has id with no url.' );
|
|
226
227
|
}
|
|
227
228
|
|
|
228
|
-
// Detect any pasted image and start an upload
|
|
229
|
+
// Detect any pasted image and start an upload.
|
|
229
230
|
if (
|
|
230
231
|
! attributes.id &&
|
|
231
232
|
attributes.url &&
|
|
@@ -239,7 +240,7 @@ export class ImageEdit extends Component {
|
|
|
239
240
|
}
|
|
240
241
|
|
|
241
242
|
// Make sure we mark any temporary images as failed if they failed while
|
|
242
|
-
// the editor wasn't open
|
|
243
|
+
// the editor wasn't open.
|
|
243
244
|
if (
|
|
244
245
|
attributes.id &&
|
|
245
246
|
attributes.url &&
|
|
@@ -250,7 +251,7 @@ export class ImageEdit extends Component {
|
|
|
250
251
|
}
|
|
251
252
|
|
|
252
253
|
componentWillUnmount() {
|
|
253
|
-
//
|
|
254
|
+
// This action will only exist if the user pressed the trash button on the block holder.
|
|
254
255
|
if (
|
|
255
256
|
hasAction( 'blocks.onRemoveBlockCheckUpload' ) &&
|
|
256
257
|
this.state.uploadStatus === UPLOAD_STATE_UPLOADING
|
|
@@ -305,7 +306,7 @@ export class ImageEdit extends Component {
|
|
|
305
306
|
|
|
306
307
|
static getDerivedStateFromProps( props, state ) {
|
|
307
308
|
// Avoid a UI flicker in the toolbar by insuring that isCaptionSelected
|
|
308
|
-
// is updated immediately any time the isSelected prop becomes false
|
|
309
|
+
// is updated immediately any time the isSelected prop becomes false.
|
|
309
310
|
return {
|
|
310
311
|
isCaptionSelected: props.isSelected && state.isCaptionSelected,
|
|
311
312
|
};
|
|
@@ -363,6 +364,10 @@ export class ImageEdit extends Component {
|
|
|
363
364
|
|
|
364
365
|
setAttributes( { url: payload.mediaUrl, id: payload.mediaServerId } );
|
|
365
366
|
this.setState( { uploadStatus: UPLOAD_STATE_SUCCEEDED } );
|
|
367
|
+
|
|
368
|
+
this.setState( {
|
|
369
|
+
isAnimatedGif: payload.mediaUrl.toLowerCase().includes( '.gif' ),
|
|
370
|
+
} );
|
|
366
371
|
}
|
|
367
372
|
|
|
368
373
|
finishMediaUploadWithFailure( payload ) {
|
|
@@ -459,6 +464,10 @@ export class ImageEdit extends Component {
|
|
|
459
464
|
...mediaAttributes,
|
|
460
465
|
...additionalAttributes,
|
|
461
466
|
} );
|
|
467
|
+
|
|
468
|
+
this.setState( {
|
|
469
|
+
isAnimatedGif: media.url.toLowerCase().includes( '.gif' ),
|
|
470
|
+
} );
|
|
462
471
|
}
|
|
463
472
|
|
|
464
473
|
onFocusCaption() {
|
|
@@ -739,8 +748,16 @@ export class ImageEdit extends Component {
|
|
|
739
748
|
context?.fixedHeight && styles.fixedHeight,
|
|
740
749
|
];
|
|
741
750
|
|
|
751
|
+
const badgeLabelShown = isFeaturedImage || this.state.isAnimatedGif;
|
|
752
|
+
let badgeLabelText = '';
|
|
753
|
+
if ( isFeaturedImage ) {
|
|
754
|
+
badgeLabelText = __( 'Featured' );
|
|
755
|
+
} else if ( this.state.isAnimatedGif ) {
|
|
756
|
+
badgeLabelText = __( 'GIF' );
|
|
757
|
+
}
|
|
758
|
+
|
|
742
759
|
const getImageComponent = ( openMediaOptions, getMediaOptions ) => (
|
|
743
|
-
<Badge label={
|
|
760
|
+
<Badge label={ badgeLabelText } show={ badgeLabelShown }>
|
|
744
761
|
<TouchableWithoutFeedback
|
|
745
762
|
accessible={ ! isSelected }
|
|
746
763
|
onPress={ this.onImagePressed }
|
|
@@ -813,7 +830,7 @@ export class ImageEdit extends Component {
|
|
|
813
830
|
accessible
|
|
814
831
|
accessibilityLabelCreator={ this.accessibilityLabelCreator }
|
|
815
832
|
onFocus={ this.onFocusCaption }
|
|
816
|
-
onBlur={ this.props.onBlur } //
|
|
833
|
+
onBlur={ this.props.onBlur } // Always assign onBlur as props.
|
|
817
834
|
insertBlocksAfter={ this.props.insertBlocksAfter }
|
|
818
835
|
/>
|
|
819
836
|
</Badge>
|
|
@@ -851,7 +868,7 @@ export default compose( [
|
|
|
851
868
|
const shouldGetMedia =
|
|
852
869
|
( isSelected && isNotFileUrl ) ||
|
|
853
870
|
// Edge case to update the image after uploading if the block gets unselected
|
|
854
|
-
// Check if it's the original image and not the resized one with queryparams
|
|
871
|
+
// Check if it's the original image and not the resized one with queryparams.
|
|
855
872
|
( ! isSelected &&
|
|
856
873
|
isNotFileUrl &&
|
|
857
874
|
url &&
|
package/src/image/editor.scss
CHANGED
|
@@ -70,24 +70,6 @@ figure.wp-block-image:not(.wp-block) {
|
|
|
70
70
|
}
|
|
71
71
|
}
|
|
72
72
|
|
|
73
|
-
*:not([data-align]) {
|
|
74
|
-
> .wp-block-image {
|
|
75
|
-
display: grid;
|
|
76
|
-
grid-template-columns: [image] minmax(0, max-content) [placeholder] auto;
|
|
77
|
-
.components-placeholder {
|
|
78
|
-
grid-column: placeholder;
|
|
79
|
-
}
|
|
80
|
-
> div:not(.components-placeholder) {
|
|
81
|
-
grid-column: image;
|
|
82
|
-
}
|
|
83
|
-
> figcaption {
|
|
84
|
-
grid-column: image;
|
|
85
|
-
display: table-caption;
|
|
86
|
-
caption-side: bottom;
|
|
87
|
-
}
|
|
88
|
-
}
|
|
89
|
-
}
|
|
90
|
-
|
|
91
73
|
.wp-block[data-align="left"] > .wp-block-image {
|
|
92
74
|
margin-right: 1em;
|
|
93
75
|
margin-left: 0;
|
package/src/image/save.js
CHANGED
|
@@ -65,14 +65,6 @@ export default function save( { attributes } ) {
|
|
|
65
65
|
</>
|
|
66
66
|
);
|
|
67
67
|
|
|
68
|
-
if ( 'left' === align || 'right' === align || 'center' === align ) {
|
|
69
|
-
return (
|
|
70
|
-
<div { ...useBlockProps.save() }>
|
|
71
|
-
<figure className={ classes }>{ figure }</figure>
|
|
72
|
-
</div>
|
|
73
|
-
);
|
|
74
|
-
}
|
|
75
|
-
|
|
76
68
|
return (
|
|
77
69
|
<figure { ...useBlockProps.save( { className: classes } ) }>
|
|
78
70
|
{ figure }
|
package/src/image/style.scss
CHANGED
|
@@ -22,6 +22,9 @@
|
|
|
22
22
|
width: 100%;
|
|
23
23
|
}
|
|
24
24
|
|
|
25
|
+
&.alignleft,
|
|
26
|
+
&.alignright,
|
|
27
|
+
&.aligncenter,
|
|
25
28
|
.alignleft,
|
|
26
29
|
.alignright,
|
|
27
30
|
.aligncenter {
|
|
@@ -66,7 +69,8 @@
|
|
|
66
69
|
}
|
|
67
70
|
|
|
68
71
|
// Variations
|
|
69
|
-
&.is-style-rounded img
|
|
72
|
+
&.is-style-rounded img,
|
|
73
|
+
.is-style-rounded img {
|
|
70
74
|
// We use an absolute pixel to prevent the oval shape that a value of 50% would give
|
|
71
75
|
// to rectangular images. A pill-shape is better than otherwise.
|
|
72
76
|
border-radius: 9999px;
|
|
@@ -15,7 +15,6 @@ import Clipboard from '@react-native-clipboard/clipboard';
|
|
|
15
15
|
* WordPress dependencies
|
|
16
16
|
*/
|
|
17
17
|
import { getBlockTypes, unregisterBlockType } from '@wordpress/blocks';
|
|
18
|
-
import { apiFetch } from '@wordpress/data-controls';
|
|
19
18
|
import {
|
|
20
19
|
setFeaturedImage,
|
|
21
20
|
sendMediaUpload,
|
|
@@ -40,14 +39,6 @@ sendMediaUpload.mockImplementation( ( payload ) => {
|
|
|
40
39
|
uploadCallBack( payload );
|
|
41
40
|
} );
|
|
42
41
|
|
|
43
|
-
jest.mock( '@wordpress/data-controls', () => {
|
|
44
|
-
const dataControls = jest.requireActual( '@wordpress/data-controls' );
|
|
45
|
-
return {
|
|
46
|
-
...dataControls,
|
|
47
|
-
apiFetch: jest.fn(),
|
|
48
|
-
};
|
|
49
|
-
} );
|
|
50
|
-
|
|
51
42
|
/**
|
|
52
43
|
* Immediately invoke delayed functions. A better alternative would be using
|
|
53
44
|
* fake timers and test the delay itself. However, fake timers does not work
|
|
@@ -59,7 +50,6 @@ jest.mock( 'lodash', () => {
|
|
|
59
50
|
} );
|
|
60
51
|
|
|
61
52
|
const apiFetchPromise = Promise.resolve( {} );
|
|
62
|
-
apiFetch.mockImplementation( () => apiFetchPromise );
|
|
63
53
|
|
|
64
54
|
const clipboardPromise = Promise.resolve( '' );
|
|
65
55
|
Clipboard.getString.mockImplementation( () => clipboardPromise );
|
|
@@ -77,7 +67,7 @@ afterAll( () => {
|
|
|
77
67
|
unregisterBlockType( name );
|
|
78
68
|
} );
|
|
79
69
|
|
|
80
|
-
// Restore mocks
|
|
70
|
+
// Restore mocks.
|
|
81
71
|
Image.getSize.mockRestore();
|
|
82
72
|
} );
|
|
83
73
|
|
package/src/image/transforms.js
CHANGED
|
@@ -19,7 +19,7 @@ export function stripFirstImage( attributes, { shortcode } ) {
|
|
|
19
19
|
|
|
20
20
|
let nodeToRemove = body.querySelector( 'img' );
|
|
21
21
|
|
|
22
|
-
//
|
|
22
|
+
// If an image has parents, find the topmost node to remove.
|
|
23
23
|
while (
|
|
24
24
|
nodeToRemove &&
|
|
25
25
|
nodeToRemove.parentNode &&
|