@wordpress/block-library 7.1.0 → 7.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +13 -0
- package/README.md +1 -1
- package/build/archives/edit.js +21 -1
- package/build/archives/edit.js.map +1 -1
- package/build/archives/index.js +5 -1
- package/build/archives/index.js.map +1 -1
- package/build/audio/edit.native.js +0 -5
- package/build/audio/edit.native.js.map +1 -1
- package/build/avatar/edit.js +211 -0
- package/build/avatar/edit.js.map +1 -0
- package/build/avatar/hooks.js +111 -0
- package/build/avatar/hooks.js.map +1 -0
- package/build/avatar/index.js +83 -0
- package/build/avatar/index.js.map +1 -0
- package/build/avatar/user-control.js +63 -0
- package/build/avatar/user-control.js.map +1 -0
- package/build/block/edit.js +2 -1
- package/build/block/edit.js.map +1 -1
- package/build/column/index.js +3 -1
- package/build/column/index.js.map +1 -1
- package/build/comment-author-avatar/index.js +4 -3
- package/build/comment-author-avatar/index.js.map +1 -1
- package/build/comment-author-name/index.js +7 -3
- package/build/comment-author-name/index.js.map +1 -1
- package/build/comment-content/index.js +1 -1
- package/build/comment-date/edit.js +10 -25
- package/build/comment-date/edit.js.map +1 -1
- package/build/comment-date/index.js +7 -3
- package/build/comment-date/index.js.map +1 -1
- package/build/comment-edit-link/index.js +5 -1
- package/build/comment-edit-link/index.js.map +1 -1
- package/build/comment-reply-link/index.js +5 -1
- package/build/comment-reply-link/index.js.map +1 -1
- package/build/comment-template/edit.js +86 -66
- package/build/comment-template/edit.js.map +1 -1
- package/build/comment-template/hooks.js +7 -23
- package/build/comment-template/hooks.js.map +1 -1
- package/build/comment-template/index.js +2 -2
- package/build/comments-pagination-next/index.js +2 -2
- package/build/comments-pagination-numbers/index.js +1 -1
- package/build/comments-pagination-previous/index.js +1 -1
- package/build/comments-query-loop/edit/comments-inspector-controls.js +2 -69
- package/build/comments-query-loop/edit/comments-inspector-controls.js.map +1 -1
- package/build/comments-query-loop/edit.js +22 -1
- package/build/comments-query-loop/edit.js.map +1 -1
- package/build/comments-query-loop/index.js +1 -23
- package/build/comments-query-loop/index.js.map +1 -1
- package/build/cover/edit.js +58 -39
- package/build/cover/edit.js.map +1 -1
- package/build/cover/index.js +5 -0
- package/build/cover/index.js.map +1 -1
- package/build/cover/save.js +3 -2
- package/build/cover/save.js.map +1 -1
- package/build/embed/variations.js +2 -2
- package/build/embed/variations.js.map +1 -1
- package/build/gallery/edit.js +18 -5
- package/build/gallery/edit.js.map +1 -1
- package/build/gallery/gallery.js +1 -1
- package/build/gallery/gallery.js.map +1 -1
- package/build/gallery/gap-styles.js +35 -0
- package/build/gallery/gap-styles.js.map +1 -0
- package/build/gallery/index.js +18 -1
- package/build/gallery/index.js.map +1 -1
- package/build/group/edit.js +3 -1
- package/build/group/edit.js.map +1 -1
- package/build/group/index.js +1 -1
- package/build/group/variations.js +30 -9
- package/build/group/variations.js.map +1 -1
- package/build/heading/edit.js +1 -1
- package/build/heading/edit.js.map +1 -1
- package/build/html/edit.js +3 -2
- package/build/html/edit.js.map +1 -1
- package/build/image/edit.native.js +8 -10
- package/build/image/edit.native.js.map +1 -1
- package/build/image/image.js +3 -1
- package/build/image/image.js.map +1 -1
- package/build/index.js +10 -4
- package/build/index.js.map +1 -1
- package/build/list/deprecated.js +2 -2
- package/build/list/deprecated.js.map +1 -1
- package/build/list/index.js +5 -7
- package/build/list/index.js.map +1 -1
- package/build/list/v2/deprecated.js +117 -0
- package/build/list/v2/deprecated.js.map +1 -0
- package/build/list/v2/edit.js +188 -0
- package/build/list/v2/edit.js.map +1 -0
- package/build/list/v2/index.js +36 -0
- package/build/list/v2/index.js.map +1 -0
- package/build/list/v2/migrate.js +85 -0
- package/build/list/v2/migrate.js.map +1 -0
- package/build/list/v2/save.js +34 -0
- package/build/list/v2/save.js.map +1 -0
- package/build/list/v2/transforms.js +121 -0
- package/build/list/v2/transforms.js.map +1 -0
- package/build/list-item/edit.js +96 -0
- package/build/list-item/edit.js.map +1 -0
- package/build/list-item/hooks/index.js +32 -0
- package/build/list-item/hooks/index.js.map +1 -0
- package/build/list-item/hooks/use-enter.js +93 -0
- package/build/list-item/hooks/use-enter.js.map +1 -0
- package/build/list-item/hooks/use-indent-list-item.js +74 -0
- package/build/list-item/hooks/use-indent-list-item.js.map +1 -0
- package/build/list-item/hooks/use-outdent-list-item.js +77 -0
- package/build/list-item/hooks/use-outdent-list-item.js.map +1 -0
- package/build/list-item/index.js +67 -0
- package/build/list-item/index.js.map +1 -0
- package/build/list-item/save.js +23 -0
- package/build/list-item/save.js.map +1 -0
- package/build/list-item/utils.js +16 -0
- package/build/list-item/utils.js.map +1 -0
- package/build/media-text/edit.js +3 -1
- package/build/media-text/edit.js.map +1 -1
- package/build/media-text/media-container.native.js +1 -16
- package/build/media-text/media-container.native.js.map +1 -1
- package/build/navigation/edit/index.js +36 -17
- package/build/navigation/edit/index.js.map +1 -1
- package/build/navigation/edit/navigation-menu-delete-control.js +1 -1
- package/build/navigation/edit/navigation-menu-delete-control.js.map +1 -1
- package/build/navigation/edit/unsaved-inner-blocks.js +34 -7
- package/build/navigation/edit/unsaved-inner-blocks.js.map +1 -1
- package/build/navigation/index.js +9 -1
- package/build/navigation/index.js.map +1 -1
- package/build/navigation/use-navigation-entities.js +26 -54
- package/build/navigation/use-navigation-entities.js.map +1 -1
- package/build/navigation/use-navigation-menu.js +1 -0
- package/build/navigation/use-navigation-menu.js.map +1 -1
- package/build/navigation-link/edit.js +95 -37
- package/build/navigation-link/edit.js.map +1 -1
- package/build/navigation-link/index.js +1 -1
- package/build/navigation-submenu/edit.js +5 -9
- package/build/navigation-submenu/edit.js.map +1 -1
- package/build/navigation-submenu/index.js +1 -1
- package/build/post-comment/edit.js +2 -2
- package/build/post-comment/edit.js.map +1 -1
- package/build/post-comments-form/edit.js +3 -2
- package/build/post-comments-form/edit.js.map +1 -1
- package/build/post-date/edit.js +31 -37
- package/build/post-date/edit.js.map +1 -1
- package/build/post-featured-image/edit.js +2 -1
- package/build/post-featured-image/edit.js.map +1 -1
- package/build/post-featured-image/index.js +1 -1
- package/build/post-template/edit.js +7 -2
- package/build/post-template/edit.js.map +1 -1
- package/build/post-terms/edit.js +3 -1
- package/build/post-terms/edit.js.map +1 -1
- package/build/post-terms/variations.js +1 -1
- package/build/post-terms/variations.js.map +1 -1
- package/build/pullquote/edit.js +5 -3
- package/build/pullquote/edit.js.map +1 -1
- package/build/query/variations.js +4 -4
- package/build/query/variations.js.map +1 -1
- package/build/query-no-results/edit.js +28 -0
- package/build/query-no-results/edit.js.map +1 -0
- package/build/query-no-results/index.js +54 -0
- package/build/query-no-results/index.js.map +1 -0
- package/build/query-no-results/save.js +18 -0
- package/build/query-no-results/save.js.map +1 -0
- package/build/query-pagination/edit.js +1 -1
- package/build/query-pagination/edit.js.map +1 -1
- package/build/query-pagination-numbers/index.js +19 -1
- package/build/query-pagination-numbers/index.js.map +1 -1
- package/build/quote/index.js +15 -8
- package/build/quote/index.js.map +1 -1
- package/build/quote/v2/deprecated.js +133 -0
- package/build/quote/v2/deprecated.js.map +1 -0
- package/build/quote/v2/edit.js +131 -0
- package/build/quote/v2/edit.js.map +1 -0
- package/build/quote/v2/index.js +49 -0
- package/build/quote/v2/index.js.map +1 -0
- package/build/quote/v2/save.js +43 -0
- package/build/quote/v2/save.js.map +1 -0
- package/build/quote/v2/transforms.js +156 -0
- package/build/quote/v2/transforms.js.map +1 -0
- package/build/read-more/index.js +1 -1
- package/build/rss/edit.js +6 -1
- package/build/rss/edit.js.map +1 -1
- package/build/search/edit.js +2 -3
- package/build/search/edit.js.map +1 -1
- package/build/separator/deprecated.js +83 -0
- package/build/separator/deprecated.js.map +1 -0
- package/build/separator/edit.js +31 -23
- package/build/separator/edit.js.map +1 -1
- package/build/separator/index.js +17 -7
- package/build/separator/index.js.map +1 -1
- package/build/separator/save.js +18 -13
- package/build/separator/save.js.map +1 -1
- package/build/separator/use-deprecated-opacity.js +39 -0
- package/build/separator/use-deprecated-opacity.js.map +1 -0
- package/build/site-logo/edit.js +3 -2
- package/build/site-logo/edit.js.map +1 -1
- package/build/site-logo/index.js +1 -1
- package/build/social-links/edit.js +14 -3
- package/build/social-links/edit.js.map +1 -1
- package/build/social-links/index.js +2 -1
- package/build/social-links/index.js.map +1 -1
- package/build/spacer/controls.js +6 -16
- package/build/spacer/controls.js.map +1 -1
- package/build/spacer/controls.native.js +3 -1
- package/build/spacer/controls.native.js.map +1 -1
- package/build/spacer/edit.js +4 -5
- package/build/spacer/edit.js.map +1 -1
- package/build/table/deprecated.js +1 -1
- package/build/table/deprecated.js.map +1 -1
- package/build/tag-cloud/edit.js +58 -2
- package/build/tag-cloud/edit.js.map +1 -1
- package/build/tag-cloud/index.js +8 -0
- package/build/tag-cloud/index.js.map +1 -1
- package/build/template-part/edit/utils/hooks.js +5 -2
- package/build/template-part/edit/utils/hooks.js.map +1 -1
- package/build-module/archives/edit.js +22 -2
- package/build-module/archives/edit.js.map +1 -1
- package/build-module/archives/index.js +5 -1
- package/build-module/archives/index.js.map +1 -1
- package/build-module/audio/edit.native.js +0 -5
- package/build-module/audio/edit.native.js.map +1 -1
- package/build-module/avatar/edit.js +195 -0
- package/build-module/avatar/edit.js.map +1 -0
- package/build-module/avatar/hooks.js +99 -0
- package/build-module/avatar/hooks.js.map +1 -0
- package/build-module/avatar/index.js +70 -0
- package/build-module/avatar/index.js.map +1 -0
- package/build-module/avatar/user-control.js +52 -0
- package/build-module/avatar/user-control.js.map +1 -0
- package/build-module/block/edit.js +4 -3
- package/build-module/block/edit.js.map +1 -1
- package/build-module/column/index.js +3 -1
- package/build-module/column/index.js.map +1 -1
- package/build-module/comment-author-avatar/index.js +4 -3
- package/build-module/comment-author-avatar/index.js.map +1 -1
- package/build-module/comment-author-name/index.js +7 -3
- package/build-module/comment-author-name/index.js.map +1 -1
- package/build-module/comment-content/index.js +1 -1
- package/build-module/comment-date/edit.js +13 -30
- package/build-module/comment-date/edit.js.map +1 -1
- package/build-module/comment-date/index.js +7 -3
- package/build-module/comment-date/index.js.map +1 -1
- package/build-module/comment-edit-link/index.js +5 -1
- package/build-module/comment-edit-link/index.js.map +1 -1
- package/build-module/comment-reply-link/index.js +5 -1
- package/build-module/comment-reply-link/index.js.map +1 -1
- package/build-module/comment-template/edit.js +86 -66
- package/build-module/comment-template/edit.js.map +1 -1
- package/build-module/comment-template/hooks.js +7 -23
- package/build-module/comment-template/hooks.js.map +1 -1
- package/build-module/comment-template/index.js +2 -2
- package/build-module/comments-pagination-next/index.js +2 -2
- package/build-module/comments-pagination-numbers/index.js +1 -1
- package/build-module/comments-pagination-previous/index.js +1 -1
- package/build-module/comments-query-loop/edit/comments-inspector-controls.js +4 -70
- package/build-module/comments-query-loop/edit/comments-inspector-controls.js.map +1 -1
- package/build-module/comments-query-loop/edit.js +22 -1
- package/build-module/comments-query-loop/edit.js.map +1 -1
- package/build-module/comments-query-loop/index.js +1 -23
- package/build-module/comments-query-loop/index.js.map +1 -1
- package/build-module/cover/edit.js +58 -41
- package/build-module/cover/edit.js.map +1 -1
- package/build-module/cover/index.js +5 -0
- package/build-module/cover/index.js.map +1 -1
- package/build-module/cover/save.js +3 -2
- package/build-module/cover/save.js.map +1 -1
- package/build-module/embed/variations.js +2 -2
- package/build-module/embed/variations.js.map +1 -1
- package/build-module/gallery/edit.js +17 -5
- package/build-module/gallery/edit.js.map +1 -1
- package/build-module/gallery/gallery.js +1 -1
- package/build-module/gallery/gallery.js.map +1 -1
- package/build-module/gallery/gap-styles.js +28 -0
- package/build-module/gallery/gap-styles.js.map +1 -0
- package/build-module/gallery/index.js +18 -1
- package/build-module/gallery/index.js.map +1 -1
- package/build-module/group/edit.js +3 -1
- package/build-module/group/edit.js.map +1 -1
- package/build-module/group/index.js +1 -1
- package/build-module/group/variations.js +29 -9
- package/build-module/group/variations.js.map +1 -1
- package/build-module/heading/edit.js +1 -1
- package/build-module/heading/edit.js.map +1 -1
- package/build-module/html/edit.js +4 -3
- package/build-module/html/edit.js.map +1 -1
- package/build-module/image/edit.native.js +8 -10
- package/build-module/image/edit.native.js.map +1 -1
- package/build-module/image/image.js +3 -1
- package/build-module/image/image.js.map +1 -1
- package/build-module/index.js +7 -4
- package/build-module/index.js.map +1 -1
- package/build-module/list/deprecated.js +2 -2
- package/build-module/list/deprecated.js.map +1 -1
- package/build-module/list/index.js +5 -1
- package/build-module/list/index.js.map +1 -1
- package/build-module/list/v2/deprecated.js +104 -0
- package/build-module/list/v2/deprecated.js.map +1 -0
- package/build-module/list/v2/edit.js +168 -0
- package/build-module/list/v2/edit.js.map +1 -0
- package/build-module/list/v2/index.js +21 -0
- package/build-module/list/v2/index.js.map +1 -0
- package/build-module/list/v2/migrate.js +77 -0
- package/build-module/list/v2/migrate.js.map +1 -0
- package/build-module/list/v2/save.js +23 -0
- package/build-module/list/v2/save.js.map +1 -0
- package/build-module/list/v2/transforms.js +111 -0
- package/build-module/list/v2/transforms.js.map +1 -0
- package/build-module/list-item/edit.js +83 -0
- package/build-module/list-item/edit.js.map +1 -0
- package/build-module/list-item/hooks/index.js +4 -0
- package/build-module/list-item/hooks/index.js.map +1 -0
- package/build-module/list-item/hooks/use-enter.js +77 -0
- package/build-module/list-item/hooks/use-enter.js.map +1 -0
- package/build-module/list-item/hooks/use-indent-list-item.js +62 -0
- package/build-module/list-item/hooks/use-indent-list-item.js.map +1 -0
- package/build-module/list-item/hooks/use-outdent-list-item.js +66 -0
- package/build-module/list-item/hooks/use-outdent-list-item.js.map +1 -0
- package/build-module/list-item/index.js +53 -0
- package/build-module/list-item/index.js.map +1 -0
- package/build-module/list-item/save.js +15 -0
- package/build-module/list-item/save.js.map +1 -0
- package/build-module/list-item/utils.js +8 -0
- package/build-module/list-item/utils.js.map +1 -0
- package/build-module/media-text/edit.js +3 -1
- package/build-module/media-text/edit.js.map +1 -1
- package/build-module/media-text/media-container.native.js +1 -14
- package/build-module/media-text/media-container.native.js.map +1 -1
- package/build-module/navigation/edit/index.js +37 -17
- package/build-module/navigation/edit/index.js.map +1 -1
- package/build-module/navigation/edit/navigation-menu-delete-control.js +1 -1
- package/build-module/navigation/edit/navigation-menu-delete-control.js.map +1 -1
- package/build-module/navigation/edit/unsaved-inner-blocks.js +35 -8
- package/build-module/navigation/edit/unsaved-inner-blocks.js.map +1 -1
- package/build-module/navigation/index.js +9 -1
- package/build-module/navigation/index.js.map +1 -1
- package/build-module/navigation/use-navigation-entities.js +27 -54
- package/build-module/navigation/use-navigation-entities.js.map +1 -1
- package/build-module/navigation/use-navigation-menu.js +1 -0
- package/build-module/navigation/use-navigation-menu.js.map +1 -1
- package/build-module/navigation-link/edit.js +95 -36
- package/build-module/navigation-link/edit.js.map +1 -1
- package/build-module/navigation-link/index.js +1 -1
- package/build-module/navigation-submenu/edit.js +6 -10
- package/build-module/navigation-submenu/edit.js.map +1 -1
- package/build-module/navigation-submenu/index.js +1 -1
- package/build-module/post-comment/edit.js +2 -2
- package/build-module/post-comment/edit.js.map +1 -1
- package/build-module/post-comments-form/edit.js +3 -2
- package/build-module/post-comments-form/edit.js.map +1 -1
- package/build-module/post-date/edit.js +32 -43
- package/build-module/post-date/edit.js.map +1 -1
- package/build-module/post-featured-image/edit.js +2 -1
- package/build-module/post-featured-image/edit.js.map +1 -1
- package/build-module/post-featured-image/index.js +1 -1
- package/build-module/post-template/edit.js +7 -2
- package/build-module/post-template/edit.js.map +1 -1
- package/build-module/post-terms/edit.js +4 -2
- package/build-module/post-terms/edit.js.map +1 -1
- package/build-module/post-terms/variations.js +3 -3
- package/build-module/post-terms/variations.js.map +1 -1
- package/build-module/pullquote/edit.js +6 -3
- package/build-module/pullquote/edit.js.map +1 -1
- package/build-module/query/variations.js +4 -4
- package/build-module/query/variations.js.map +1 -1
- package/build-module/query-no-results/edit.js +18 -0
- package/build-module/query-no-results/edit.js.map +1 -0
- package/build-module/query-no-results/index.js +40 -0
- package/build-module/query-no-results/index.js.map +1 -0
- package/build-module/query-no-results/save.js +10 -0
- package/build-module/query-no-results/save.js.map +1 -0
- package/build-module/query-pagination/edit.js +1 -1
- package/build-module/query-pagination/edit.js.map +1 -1
- package/build-module/query-pagination-numbers/index.js +19 -1
- package/build-module/query-pagination-numbers/index.js.map +1 -1
- package/build-module/quote/index.js +13 -1
- package/build-module/quote/index.js.map +1 -1
- package/build-module/quote/v2/deprecated.js +116 -0
- package/build-module/quote/v2/deprecated.js.map +1 -0
- package/build-module/quote/v2/edit.js +115 -0
- package/build-module/quote/v2/edit.js.map +1 -0
- package/build-module/quote/v2/index.js +33 -0
- package/build-module/quote/v2/index.js.map +1 -0
- package/build-module/quote/v2/save.js +30 -0
- package/build-module/quote/v2/save.js.map +1 -0
- package/build-module/quote/v2/transforms.js +147 -0
- package/build-module/quote/v2/transforms.js.map +1 -0
- package/build-module/read-more/index.js +1 -1
- package/build-module/rss/edit.js +5 -1
- package/build-module/rss/edit.js.map +1 -1
- package/build-module/search/edit.js +2 -3
- package/build-module/search/edit.js.map +1 -1
- package/build-module/separator/deprecated.js +70 -0
- package/build-module/separator/deprecated.js.map +1 -0
- package/build-module/separator/edit.js +31 -22
- package/build-module/separator/edit.js.map +1 -1
- package/build-module/separator/index.js +16 -7
- package/build-module/separator/index.js.map +1 -1
- package/build-module/separator/save.js +19 -14
- package/build-module/separator/save.js.map +1 -1
- package/build-module/separator/use-deprecated-opacity.js +30 -0
- package/build-module/separator/use-deprecated-opacity.js.map +1 -0
- package/build-module/site-logo/edit.js +3 -2
- package/build-module/site-logo/edit.js.map +1 -1
- package/build-module/site-logo/index.js +1 -1
- package/build-module/social-links/edit.js +15 -4
- package/build-module/social-links/edit.js.map +1 -1
- package/build-module/social-links/index.js +2 -1
- package/build-module/social-links/index.js.map +1 -1
- package/build-module/spacer/controls.js +8 -19
- package/build-module/spacer/controls.js.map +1 -1
- package/build-module/spacer/controls.native.js +2 -1
- package/build-module/spacer/controls.native.js.map +1 -1
- package/build-module/spacer/edit.js +3 -3
- package/build-module/spacer/edit.js.map +1 -1
- package/build-module/table/deprecated.js +1 -1
- package/build-module/table/deprecated.js.map +1 -1
- package/build-module/tag-cloud/edit.js +60 -4
- package/build-module/tag-cloud/edit.js.map +1 -1
- package/build-module/tag-cloud/index.js +8 -0
- package/build-module/tag-cloud/index.js.map +1 -1
- package/build-module/template-part/edit/utils/hooks.js +5 -2
- package/build-module/template-part/edit/utils/hooks.js.map +1 -1
- package/build-style/avatar/editor-rtl.css +83 -0
- package/build-style/avatar/editor.css +83 -0
- package/build-style/avatar/style-rtl.css +79 -0
- package/build-style/avatar/style.css +79 -0
- package/build-style/editor-rtl.css +53 -11
- package/build-style/editor.css +53 -11
- package/build-style/gallery/editor-rtl.css +0 -1
- package/build-style/gallery/editor.css +0 -1
- package/build-style/gallery/style-rtl.css +102 -169
- package/build-style/gallery/style.css +102 -169
- package/build-style/group/editor-rtl.css +26 -0
- package/build-style/group/editor.css +26 -0
- package/build-style/heading/style-rtl.css +0 -8
- package/build-style/heading/style.css +0 -8
- package/build-style/image/style-rtl.css +2 -0
- package/build-style/image/style.css +2 -0
- package/build-style/list/style-rtl.css +1 -1
- package/build-style/list/style.css +1 -1
- package/build-style/navigation/style-rtl.css +11 -9
- package/build-style/navigation/style.css +11 -9
- package/build-style/navigation-link/editor-rtl.css +13 -0
- package/build-style/navigation-link/editor.css +13 -0
- package/build-style/navigation-link/style-rtl.css +3 -0
- package/build-style/navigation-link/style.css +3 -0
- package/build-style/paragraph/style-rtl.css +0 -4
- package/build-style/paragraph/style.css +0 -4
- package/build-style/pullquote/style-rtl.css +0 -4
- package/build-style/pullquote/style.css +0 -4
- package/build-style/quote/style-rtl.css +1 -0
- package/build-style/quote/style.css +1 -0
- package/build-style/reset-rtl.css +1 -1
- package/build-style/reset.css +1 -1
- package/build-style/separator/editor-rtl.css +3 -0
- package/build-style/separator/editor.css +3 -0
- package/build-style/separator/theme-rtl.css +7 -1
- package/build-style/separator/theme.css +7 -1
- package/build-style/site-logo/editor-rtl.css +3 -1
- package/build-style/site-logo/editor.css +3 -1
- package/build-style/style-rtl.css +124 -195
- package/build-style/style.css +124 -195
- package/build-style/template-part/editor-rtl.css +0 -9
- package/build-style/template-part/editor.css +0 -9
- package/build-style/theme-rtl.css +7 -1
- package/build-style/theme.css +7 -1
- package/package.json +28 -28
- package/src/archives/block.json +5 -1
- package/src/archives/edit.js +20 -2
- package/src/archives/index.php +4 -4
- package/src/audio/edit.native.js +0 -5
- package/src/avatar/block.json +53 -0
- package/src/avatar/edit.js +230 -0
- package/src/avatar/editor.scss +9 -0
- package/src/avatar/hooks.js +96 -0
- package/src/avatar/index.js +18 -0
- package/src/avatar/index.php +146 -0
- package/src/avatar/style.scss +5 -0
- package/src/avatar/user-control.js +56 -0
- package/src/block/edit.js +21 -11
- package/src/column/block.json +3 -1
- package/src/comment-author-avatar/block.json +4 -3
- package/src/comment-author-name/block.json +7 -3
- package/src/comment-author-name/index.php +3 -0
- package/src/comment-content/block.json +1 -1
- package/src/comment-date/block.json +7 -3
- package/src/comment-date/edit.js +20 -30
- package/src/comment-date/index.php +6 -1
- package/src/comment-edit-link/block.json +5 -1
- package/src/comment-edit-link/index.php +3 -0
- package/src/comment-reply-link/block.json +5 -1
- package/src/comment-reply-link/index.php +4 -1
- package/src/comment-template/block.json +2 -8
- package/src/comment-template/edit.js +77 -64
- package/src/comment-template/hooks.js +8 -24
- package/src/comment-template/index.php +1 -3
- package/src/comments-pagination-next/block.json +2 -9
- package/src/comments-pagination-numbers/block.json +2 -8
- package/src/comments-pagination-previous/block.json +2 -2
- package/src/comments-query-loop/block.json +1 -23
- package/src/comments-query-loop/edit/comments-inspector-controls.js +2 -83
- package/src/comments-query-loop/edit.js +54 -1
- package/src/cover/block.json +5 -0
- package/src/cover/edit.js +103 -60
- package/src/cover/index.php +85 -0
- package/src/cover/save.js +18 -14
- package/src/editor.scss +1 -0
- package/src/embed/variations.js +2 -2
- package/src/gallery/block.json +18 -1
- package/src/gallery/deprecated.scss +2 -2
- package/src/gallery/edit.js +15 -8
- package/src/gallery/editor.scss +0 -1
- package/src/gallery/gallery.js +8 -7
- package/src/gallery/gap-styles.js +26 -0
- package/src/gallery/index.php +43 -1
- package/src/gallery/style.scss +11 -44
- package/src/group/block.json +1 -1
- package/src/group/edit.js +4 -1
- package/src/group/editor.scss +31 -0
- package/src/group/variations.js +21 -4
- package/src/heading/edit.js +1 -1
- package/src/heading/style.scss +0 -3
- package/src/html/edit.js +22 -30
- package/src/image/edit.native.js +7 -11
- package/src/image/image.js +4 -1
- package/src/image/style.scss +3 -0
- package/src/index.js +19 -14
- package/src/list/deprecated.js +2 -2
- package/src/list/index.js +6 -1
- package/src/list/style.scss +1 -2
- package/src/list/test/migrate.js +159 -0
- package/src/list/v2/deprecated.js +89 -0
- package/src/list/v2/edit.js +186 -0
- package/src/list/v2/index.js +22 -0
- package/src/list/v2/migrate.js +87 -0
- package/src/list/v2/save.js +18 -0
- package/src/list/v2/transforms.js +116 -0
- package/src/list-item/block.json +26 -0
- package/src/list-item/edit.js +93 -0
- package/src/list-item/hooks/index.js +3 -0
- package/src/list-item/hooks/use-enter.js +94 -0
- package/src/list-item/hooks/use-indent-list-item.js +89 -0
- package/src/list-item/hooks/use-outdent-list-item.js +95 -0
- package/src/list-item/index.js +27 -0
- package/src/list-item/save.js +13 -0
- package/src/list-item/utils.js +14 -0
- package/src/media-text/edit.js +1 -1
- package/src/media-text/media-container.native.js +1 -14
- package/src/navigation/block.json +9 -1
- package/src/navigation/edit/index.js +50 -14
- package/src/navigation/edit/navigation-menu-delete-control.js +1 -1
- package/src/navigation/edit/unsaved-inner-blocks.js +57 -8
- package/src/navigation/index.php +28 -3
- package/src/navigation/style.scss +15 -13
- package/src/navigation/use-navigation-entities.js +37 -73
- package/src/navigation/use-navigation-menu.js +4 -0
- package/src/navigation-link/block.json +1 -0
- package/src/navigation-link/edit.js +156 -64
- package/src/navigation-link/editor.scss +11 -0
- package/src/navigation-link/index.php +8 -0
- package/src/navigation-link/style.scss +6 -0
- package/src/navigation-submenu/block.json +1 -0
- package/src/navigation-submenu/edit.js +7 -9
- package/src/paragraph/style.scss +0 -5
- package/src/post-author/index.php +0 -1
- package/src/post-comment/edit.js +2 -2
- package/src/post-comments-form/edit.js +6 -3
- package/src/post-date/edit.js +63 -52
- package/src/post-date/index.php +1 -1
- package/src/post-date/test/edit.js +17 -0
- package/src/post-featured-image/block.json +1 -1
- package/src/post-featured-image/edit.js +9 -1
- package/src/post-featured-image/index.php +2 -1
- package/src/post-template/edit.js +7 -1
- package/src/post-terms/edit.js +4 -1
- package/src/post-terms/variations.js +3 -3
- package/src/pullquote/edit.js +4 -3
- package/src/pullquote/style.scss +0 -5
- package/src/query/variations.js +4 -0
- package/src/query-no-results/block.json +20 -0
- package/src/query-no-results/edit.js +28 -0
- package/src/query-no-results/index.js +20 -0
- package/src/query-no-results/index.php +59 -0
- package/src/query-no-results/save.js +8 -0
- package/src/query-pagination/edit.js +1 -1
- package/src/query-pagination/index.php +9 -2
- package/src/query-pagination-numbers/block.json +19 -1
- package/src/quote/block.json +8 -0
- package/src/quote/index.js +6 -1
- package/src/quote/style.scss +1 -0
- package/src/quote/v2/deprecated.js +107 -0
- package/src/quote/v2/edit.js +136 -0
- package/src/quote/v2/index.js +36 -0
- package/src/quote/v2/save.js +26 -0
- package/src/quote/v2/test/migrate.js +92 -0
- package/src/quote/v2/transforms.js +155 -0
- package/src/read-more/block.json +1 -1
- package/src/reset.scss +1 -1
- package/src/rss/edit.js +3 -1
- package/src/rss/index.php +14 -1
- package/src/search/edit.js +1 -2
- package/src/separator/block.json +13 -6
- package/src/separator/deprecated.js +57 -0
- package/src/separator/deprecated.scss +6 -0
- package/src/separator/edit.js +36 -14
- package/src/separator/editor.scss +6 -0
- package/src/separator/index.js +2 -0
- package/src/separator/save.js +22 -14
- package/src/separator/test/edit.js +113 -0
- package/src/separator/theme.scss +7 -1
- package/src/separator/use-deprecated-opacity.js +41 -0
- package/src/site-logo/block.json +1 -1
- package/src/site-logo/edit.js +2 -1
- package/src/site-logo/editor.scss +3 -1
- package/src/site-logo/index.php +0 -4
- package/src/social-link/index.php +1 -2
- package/src/social-links/block.json +2 -1
- package/src/social-links/edit.js +15 -5
- package/src/spacer/controls.js +12 -18
- package/src/spacer/controls.native.js +2 -1
- package/src/spacer/edit.js +3 -6
- package/src/spacer/test/__snapshots__/index.native.js.snap +31 -0
- package/src/spacer/test/index.native.js +180 -0
- package/src/style.scss +1 -0
- package/src/table/deprecated.js +5 -1
- package/src/tag-cloud/block.json +8 -0
- package/src/tag-cloud/edit.js +82 -2
- package/src/tag-cloud/index.php +6 -0
- package/src/template-part/edit/utils/hooks.js +6 -1
- package/src/template-part/editor.scss +0 -10
- package/build/navigation/edit/use-list-view-modal.js +0 -73
- package/build/navigation/edit/use-list-view-modal.js.map +0 -1
- package/build/separator/separator-settings.js +0 -36
- package/build/separator/separator-settings.js.map +0 -1
- package/build-module/navigation/edit/use-list-view-modal.js +0 -63
- package/build-module/navigation/edit/use-list-view-modal.js.map +0 -1
- package/build-module/separator/separator-settings.js +0 -27
- package/build-module/separator/separator-settings.js.map +0 -1
- package/src/navigation/edit/use-list-view-modal.js +0 -72
- package/src/separator/separator-settings.js +0 -24
|
@@ -0,0 +1,155 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* WordPress dependencies
|
|
3
|
+
*/
|
|
4
|
+
import {
|
|
5
|
+
createBlock,
|
|
6
|
+
parseWithAttributeSchema,
|
|
7
|
+
rawHandler,
|
|
8
|
+
serialize,
|
|
9
|
+
} from '@wordpress/blocks';
|
|
10
|
+
|
|
11
|
+
const transforms = {
|
|
12
|
+
from: [
|
|
13
|
+
{
|
|
14
|
+
type: 'block',
|
|
15
|
+
blocks: [ 'core/pullquote' ],
|
|
16
|
+
transform: ( { value, citation, anchor, fontSize, style } ) => {
|
|
17
|
+
return createBlock(
|
|
18
|
+
'core/quote',
|
|
19
|
+
{
|
|
20
|
+
citation,
|
|
21
|
+
anchor,
|
|
22
|
+
fontSize,
|
|
23
|
+
style,
|
|
24
|
+
},
|
|
25
|
+
parseWithAttributeSchema( value, {
|
|
26
|
+
type: 'array',
|
|
27
|
+
source: 'query',
|
|
28
|
+
selector: 'p',
|
|
29
|
+
query: {
|
|
30
|
+
content: {
|
|
31
|
+
type: 'string',
|
|
32
|
+
source: 'html',
|
|
33
|
+
},
|
|
34
|
+
},
|
|
35
|
+
} ).map( ( { content } ) =>
|
|
36
|
+
createBlock( 'core/paragraph', { content } )
|
|
37
|
+
)
|
|
38
|
+
);
|
|
39
|
+
},
|
|
40
|
+
},
|
|
41
|
+
{
|
|
42
|
+
type: 'block',
|
|
43
|
+
blocks: [ 'core/group' ],
|
|
44
|
+
transform: ( { anchor }, innerBlocks ) =>
|
|
45
|
+
createBlock( 'core/quote', { anchor }, innerBlocks ),
|
|
46
|
+
},
|
|
47
|
+
{
|
|
48
|
+
type: 'prefix',
|
|
49
|
+
prefix: '>',
|
|
50
|
+
transform: ( content ) =>
|
|
51
|
+
createBlock( 'core/quote', {}, [
|
|
52
|
+
createBlock( 'core/paragraph', { content } ),
|
|
53
|
+
] ),
|
|
54
|
+
},
|
|
55
|
+
{
|
|
56
|
+
type: 'raw',
|
|
57
|
+
schema: () => ( {
|
|
58
|
+
blockquote: {
|
|
59
|
+
children: '*',
|
|
60
|
+
},
|
|
61
|
+
} ),
|
|
62
|
+
selector: 'blockquote',
|
|
63
|
+
transform: ( node ) => {
|
|
64
|
+
return createBlock(
|
|
65
|
+
'core/quote',
|
|
66
|
+
// Don't try to parse any `cite` out of this content.
|
|
67
|
+
// * There may be more than one cite.
|
|
68
|
+
// * There may be more attribution text than just the cite.
|
|
69
|
+
// * If the cite is nested in the quoted text, it's wrong to
|
|
70
|
+
// remove it.
|
|
71
|
+
{},
|
|
72
|
+
rawHandler( {
|
|
73
|
+
HTML: node.innerHTML,
|
|
74
|
+
mode: 'BLOCKS',
|
|
75
|
+
} )
|
|
76
|
+
);
|
|
77
|
+
},
|
|
78
|
+
},
|
|
79
|
+
{
|
|
80
|
+
type: 'block',
|
|
81
|
+
isMultiBlock: true,
|
|
82
|
+
blocks: [ '*' ],
|
|
83
|
+
isMatch: ( {}, blocks ) => {
|
|
84
|
+
return ! blocks.some( ( { name } ) => name === 'core/quote' );
|
|
85
|
+
},
|
|
86
|
+
__experimentalConvert: ( blocks ) =>
|
|
87
|
+
createBlock(
|
|
88
|
+
'core/quote',
|
|
89
|
+
{},
|
|
90
|
+
blocks.map( ( block ) =>
|
|
91
|
+
createBlock(
|
|
92
|
+
block.name,
|
|
93
|
+
block.attributes,
|
|
94
|
+
block.innerBlocks
|
|
95
|
+
)
|
|
96
|
+
)
|
|
97
|
+
),
|
|
98
|
+
},
|
|
99
|
+
],
|
|
100
|
+
to: [
|
|
101
|
+
{
|
|
102
|
+
type: 'block',
|
|
103
|
+
blocks: [ 'core/pullquote' ],
|
|
104
|
+
isMatch: ( {}, block ) => {
|
|
105
|
+
return block.innerBlocks.every(
|
|
106
|
+
( { name } ) => name === 'core/paragraph'
|
|
107
|
+
);
|
|
108
|
+
},
|
|
109
|
+
transform: (
|
|
110
|
+
{ citation, anchor, fontSize, style },
|
|
111
|
+
innerBlocks
|
|
112
|
+
) => {
|
|
113
|
+
return createBlock( 'core/pullquote', {
|
|
114
|
+
value: serialize( innerBlocks ),
|
|
115
|
+
citation,
|
|
116
|
+
anchor,
|
|
117
|
+
fontSize,
|
|
118
|
+
style,
|
|
119
|
+
} );
|
|
120
|
+
},
|
|
121
|
+
},
|
|
122
|
+
{
|
|
123
|
+
type: 'block',
|
|
124
|
+
blocks: [ 'core/group' ],
|
|
125
|
+
transform: ( { citation, anchor }, innerBlocks ) =>
|
|
126
|
+
createBlock(
|
|
127
|
+
'core/group',
|
|
128
|
+
{ anchor },
|
|
129
|
+
citation
|
|
130
|
+
? [
|
|
131
|
+
...innerBlocks,
|
|
132
|
+
createBlock( 'core/paragraph', {
|
|
133
|
+
content: citation,
|
|
134
|
+
} ),
|
|
135
|
+
]
|
|
136
|
+
: innerBlocks
|
|
137
|
+
),
|
|
138
|
+
},
|
|
139
|
+
{
|
|
140
|
+
type: 'block',
|
|
141
|
+
blocks: [ '*' ],
|
|
142
|
+
transform: ( { citation }, innerBlocks ) =>
|
|
143
|
+
citation
|
|
144
|
+
? [
|
|
145
|
+
...innerBlocks,
|
|
146
|
+
createBlock( 'core/paragraph', {
|
|
147
|
+
content: citation,
|
|
148
|
+
} ),
|
|
149
|
+
]
|
|
150
|
+
: innerBlocks,
|
|
151
|
+
},
|
|
152
|
+
],
|
|
153
|
+
};
|
|
154
|
+
|
|
155
|
+
export default transforms;
|
package/src/read-more/block.json
CHANGED
package/src/reset.scss
CHANGED
package/src/rss/edit.js
CHANGED
|
@@ -19,10 +19,11 @@ import {
|
|
|
19
19
|
import { useState } from '@wordpress/element';
|
|
20
20
|
import { grid, list, edit, rss } from '@wordpress/icons';
|
|
21
21
|
import { __ } from '@wordpress/i18n';
|
|
22
|
+
import { prependHTTP } from '@wordpress/url';
|
|
22
23
|
import ServerSideRender from '@wordpress/server-side-render';
|
|
23
24
|
|
|
24
25
|
const DEFAULT_MIN_ITEMS = 1;
|
|
25
|
-
const DEFAULT_MAX_ITEMS =
|
|
26
|
+
const DEFAULT_MAX_ITEMS = 20;
|
|
26
27
|
|
|
27
28
|
export default function RSSEdit( { attributes, setAttributes } ) {
|
|
28
29
|
const [ isEditing, setIsEditing ] = useState( ! attributes.feedURL );
|
|
@@ -50,6 +51,7 @@ export default function RSSEdit( { attributes, setAttributes } ) {
|
|
|
50
51
|
event.preventDefault();
|
|
51
52
|
|
|
52
53
|
if ( feedURL ) {
|
|
54
|
+
setAttributes( { feedURL: prependHTTP( feedURL ) } );
|
|
53
55
|
setIsEditing( false );
|
|
54
56
|
}
|
|
55
57
|
}
|
package/src/rss/index.php
CHANGED
|
@@ -13,6 +13,10 @@
|
|
|
13
13
|
* @return string Returns the block content with received rss items.
|
|
14
14
|
*/
|
|
15
15
|
function render_block_core_rss( $attributes ) {
|
|
16
|
+
if ( in_array( untrailingslashit( $attributes['feedURL'] ), array( site_url(), home_url() ), true ) ) {
|
|
17
|
+
return '<div class="components-placeholder"><div class="notice notice-error">' . __( 'Adding an RSS feed to this site’s homepage is not supported, as it could lead to a loop that slows down your site. Try using another block, like the <strong>Latest Posts</strong> block, to list posts from the site.' ) . '</div></div>';
|
|
18
|
+
}
|
|
19
|
+
|
|
16
20
|
$rss = fetch_feed( $attributes['feedURL'] );
|
|
17
21
|
|
|
18
22
|
if ( is_wp_error( $rss ) ) {
|
|
@@ -83,10 +87,19 @@ function render_block_core_rss( $attributes ) {
|
|
|
83
87
|
if ( isset( $attributes['blockLayout'] ) && 'grid' === $attributes['blockLayout'] ) {
|
|
84
88
|
$classnames[] = 'is-grid';
|
|
85
89
|
}
|
|
86
|
-
|
|
87
90
|
if ( isset( $attributes['columns'] ) && 'grid' === $attributes['blockLayout'] ) {
|
|
88
91
|
$classnames[] = 'columns-' . $attributes['columns'];
|
|
89
92
|
}
|
|
93
|
+
if ( $attributes['displayDate'] ) {
|
|
94
|
+
$classnames[] = 'has-dates';
|
|
95
|
+
}
|
|
96
|
+
if ( $attributes['displayAuthor'] ) {
|
|
97
|
+
$classnames[] = 'has-authors';
|
|
98
|
+
}
|
|
99
|
+
if ( $attributes['displayExcerpt'] ) {
|
|
100
|
+
$classnames[] = 'has-excerpts';
|
|
101
|
+
}
|
|
102
|
+
|
|
90
103
|
$wrapper_attributes = get_block_wrapper_attributes( array( 'class' => implode( ' ', $classnames ) ) );
|
|
91
104
|
|
|
92
105
|
return sprintf( '<ul %s>%s</ul>', $wrapper_attributes, $list_items );
|
package/src/search/edit.js
CHANGED
|
@@ -12,7 +12,6 @@ import {
|
|
|
12
12
|
InspectorControls,
|
|
13
13
|
RichText,
|
|
14
14
|
__experimentalUseBorderProps as useBorderProps,
|
|
15
|
-
__experimentalUnitControl as UnitControl,
|
|
16
15
|
__experimentalUseColorProps as useColorProps,
|
|
17
16
|
store as blockEditorStore,
|
|
18
17
|
} from '@wordpress/block-editor';
|
|
@@ -28,6 +27,7 @@ import {
|
|
|
28
27
|
PanelBody,
|
|
29
28
|
BaseControl,
|
|
30
29
|
__experimentalUseCustomUnits as useCustomUnits,
|
|
30
|
+
__experimentalUnitControl as UnitControl,
|
|
31
31
|
} from '@wordpress/components';
|
|
32
32
|
import { useInstanceId } from '@wordpress/compose';
|
|
33
33
|
import { Icon, search } from '@wordpress/icons';
|
|
@@ -352,7 +352,6 @@ export default function SearchEdit( {
|
|
|
352
352
|
} }
|
|
353
353
|
style={ { maxWidth: 80 } }
|
|
354
354
|
value={ `${ width }${ widthUnit }` }
|
|
355
|
-
unit={ widthUnit }
|
|
356
355
|
units={ units }
|
|
357
356
|
/>
|
|
358
357
|
|
package/src/separator/block.json
CHANGED
|
@@ -8,16 +8,23 @@
|
|
|
8
8
|
"keywords": [ "horizontal-line", "hr", "divider" ],
|
|
9
9
|
"textdomain": "default",
|
|
10
10
|
"attributes": {
|
|
11
|
-
"
|
|
12
|
-
"type": "string"
|
|
13
|
-
|
|
14
|
-
"customColor": {
|
|
15
|
-
"type": "string"
|
|
11
|
+
"opacity": {
|
|
12
|
+
"type": "string",
|
|
13
|
+
"default": "alpha-channel"
|
|
16
14
|
}
|
|
17
15
|
},
|
|
18
16
|
"supports": {
|
|
19
17
|
"anchor": true,
|
|
20
|
-
"align": [ "center", "wide", "full" ]
|
|
18
|
+
"align": [ "center", "wide", "full" ],
|
|
19
|
+
"color": {
|
|
20
|
+
"__experimentalSkipSerialization": true,
|
|
21
|
+
"gradients": true,
|
|
22
|
+
"background": true,
|
|
23
|
+
"text": false,
|
|
24
|
+
"__experimentalDefaultControls": {
|
|
25
|
+
"background": true
|
|
26
|
+
}
|
|
27
|
+
}
|
|
21
28
|
},
|
|
22
29
|
"styles": [
|
|
23
30
|
{ "name": "default", "label": "Default", "isDefault": true },
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* External dependencies
|
|
3
|
+
*/
|
|
4
|
+
import classnames from 'classnames';
|
|
5
|
+
import { omit } from 'lodash';
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* WordPress dependencies
|
|
9
|
+
*/
|
|
10
|
+
import { getColorClassName, useBlockProps } from '@wordpress/block-editor';
|
|
11
|
+
|
|
12
|
+
const v1 = {
|
|
13
|
+
attributes: {
|
|
14
|
+
color: {
|
|
15
|
+
type: 'string',
|
|
16
|
+
},
|
|
17
|
+
customColor: {
|
|
18
|
+
type: 'string',
|
|
19
|
+
},
|
|
20
|
+
},
|
|
21
|
+
save( { attributes } ) {
|
|
22
|
+
const { color, customColor } = attributes;
|
|
23
|
+
|
|
24
|
+
// the hr support changing color using border-color, since border-color
|
|
25
|
+
// is not yet supported in the color palette, we use background-color
|
|
26
|
+
const backgroundClass = getColorClassName( 'background-color', color );
|
|
27
|
+
// the dots styles uses text for the dots, to change those dots color is
|
|
28
|
+
// using color, not backgroundColor
|
|
29
|
+
const colorClass = getColorClassName( 'color', color );
|
|
30
|
+
|
|
31
|
+
const className = classnames( {
|
|
32
|
+
'has-text-color has-background': color || customColor,
|
|
33
|
+
[ backgroundClass ]: backgroundClass,
|
|
34
|
+
[ colorClass ]: colorClass,
|
|
35
|
+
} );
|
|
36
|
+
|
|
37
|
+
const style = {
|
|
38
|
+
backgroundColor: backgroundClass ? undefined : customColor,
|
|
39
|
+
color: colorClass ? undefined : customColor,
|
|
40
|
+
};
|
|
41
|
+
|
|
42
|
+
return <hr { ...useBlockProps.save( { className, style } ) } />;
|
|
43
|
+
},
|
|
44
|
+
migrate( attributes ) {
|
|
45
|
+
const { color, customColor } = attributes;
|
|
46
|
+
return {
|
|
47
|
+
...omit( attributes, [ 'color', 'customColor' ] ),
|
|
48
|
+
backgroundColor: color ? color : undefined,
|
|
49
|
+
opacity: 'css',
|
|
50
|
+
style: customColor
|
|
51
|
+
? { color: { background: customColor } }
|
|
52
|
+
: undefined,
|
|
53
|
+
};
|
|
54
|
+
},
|
|
55
|
+
};
|
|
56
|
+
|
|
57
|
+
export default [ v1 ];
|
package/src/separator/edit.js
CHANGED
|
@@ -7,30 +7,52 @@ import classnames from 'classnames';
|
|
|
7
7
|
* WordPress dependencies
|
|
8
8
|
*/
|
|
9
9
|
import { HorizontalRule } from '@wordpress/components';
|
|
10
|
-
import {
|
|
10
|
+
import {
|
|
11
|
+
useBlockProps,
|
|
12
|
+
getColorClassName,
|
|
13
|
+
__experimentalUseColorProps as useColorProps,
|
|
14
|
+
} from '@wordpress/block-editor';
|
|
15
|
+
|
|
11
16
|
/**
|
|
12
17
|
* Internal dependencies
|
|
13
18
|
*/
|
|
14
|
-
import
|
|
19
|
+
import useDeprecatedOpacity from './use-deprecated-opacity';
|
|
20
|
+
|
|
21
|
+
export default function SeparatorEdit( { attributes, setAttributes } ) {
|
|
22
|
+
const { backgroundColor, opacity, style } = attributes;
|
|
23
|
+
const colorProps = useColorProps( attributes );
|
|
24
|
+
const currentColor = colorProps?.style?.backgroundColor;
|
|
25
|
+
const hasCustomColor = !! style?.color?.background;
|
|
26
|
+
|
|
27
|
+
useDeprecatedOpacity( opacity, currentColor, setAttributes );
|
|
28
|
+
|
|
29
|
+
// The dots styles uses text for the dots, to change those dots color is
|
|
30
|
+
// using color, not backgroundColor.
|
|
31
|
+
const colorClass = getColorClassName( 'color', backgroundColor );
|
|
32
|
+
|
|
33
|
+
const className = classnames(
|
|
34
|
+
{
|
|
35
|
+
'has-text-color': backgroundColor || currentColor,
|
|
36
|
+
[ colorClass ]: colorClass,
|
|
37
|
+
'has-css-opacity': opacity === 'css',
|
|
38
|
+
'has-alpha-channel-opacity': opacity === 'alpha-channel',
|
|
39
|
+
},
|
|
40
|
+
colorProps.classname
|
|
41
|
+
);
|
|
42
|
+
|
|
43
|
+
const styles = {
|
|
44
|
+
color: currentColor,
|
|
45
|
+
backgroundColor: currentColor,
|
|
46
|
+
};
|
|
15
47
|
|
|
16
|
-
function SeparatorEdit( { color, setColor, className } ) {
|
|
17
48
|
return (
|
|
18
49
|
<>
|
|
19
50
|
<HorizontalRule
|
|
20
51
|
{ ...useBlockProps( {
|
|
21
|
-
className
|
|
22
|
-
|
|
23
|
-
[ color.class ]: color.class,
|
|
24
|
-
} ),
|
|
25
|
-
style: {
|
|
26
|
-
backgroundColor: color.color,
|
|
27
|
-
color: color.color,
|
|
28
|
-
},
|
|
52
|
+
className,
|
|
53
|
+
style: hasCustomColor ? styles : undefined,
|
|
29
54
|
} ) }
|
|
30
55
|
/>
|
|
31
|
-
<SeparatorSettings color={ color } setColor={ setColor } />
|
|
32
56
|
</>
|
|
33
57
|
);
|
|
34
58
|
}
|
|
35
|
-
|
|
36
|
-
export default withColors( 'color', { textColor: 'color' } )( SeparatorEdit );
|
|
@@ -2,4 +2,10 @@
|
|
|
2
2
|
// Prevent margin collapsing so the area to select the separator is bigger.
|
|
3
3
|
padding-top: 0.1px;
|
|
4
4
|
padding-bottom: 0.1px;
|
|
5
|
+
|
|
6
|
+
// This is also set in style.scss, but needs a higher specificity in editor
|
|
7
|
+
// due to the way that color block supports adds additional background color styles.
|
|
8
|
+
&.wp-block-separator.is-style-dots {
|
|
9
|
+
background: none !important;
|
|
10
|
+
}
|
|
5
11
|
}
|
package/src/separator/index.js
CHANGED
|
@@ -10,6 +10,7 @@ import edit from './edit';
|
|
|
10
10
|
import metadata from './block.json';
|
|
11
11
|
import save from './save';
|
|
12
12
|
import transforms from './transforms';
|
|
13
|
+
import deprecated from './deprecated';
|
|
13
14
|
|
|
14
15
|
const { name } = metadata;
|
|
15
16
|
|
|
@@ -26,4 +27,5 @@ export const settings = {
|
|
|
26
27
|
transforms,
|
|
27
28
|
edit,
|
|
28
29
|
save,
|
|
30
|
+
deprecated,
|
|
29
31
|
};
|
package/src/separator/save.js
CHANGED
|
@@ -6,28 +6,36 @@ import classnames from 'classnames';
|
|
|
6
6
|
/**
|
|
7
7
|
* WordPress dependencies
|
|
8
8
|
*/
|
|
9
|
-
import {
|
|
9
|
+
import {
|
|
10
|
+
getColorClassName,
|
|
11
|
+
useBlockProps,
|
|
12
|
+
__experimentalGetColorClassesAndStyles as getColorClassesAndStyles,
|
|
13
|
+
} from '@wordpress/block-editor';
|
|
10
14
|
|
|
11
15
|
export default function separatorSave( { attributes } ) {
|
|
12
|
-
const {
|
|
13
|
-
|
|
16
|
+
const { backgroundColor, style, opacity } = attributes;
|
|
17
|
+
const customColor = style?.color?.background;
|
|
18
|
+
const colorProps = getColorClassesAndStyles( attributes );
|
|
14
19
|
// The hr support changing color using border-color, since border-color
|
|
15
20
|
// is not yet supported in the color palette, we use background-color.
|
|
16
|
-
|
|
21
|
+
|
|
17
22
|
// The dots styles uses text for the dots, to change those dots color is
|
|
18
23
|
// using color, not backgroundColor.
|
|
19
|
-
const colorClass = getColorClassName( 'color',
|
|
24
|
+
const colorClass = getColorClassName( 'color', backgroundColor );
|
|
20
25
|
|
|
21
|
-
const className = classnames(
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
+
const className = classnames(
|
|
27
|
+
{
|
|
28
|
+
'has-text-color': backgroundColor || customColor,
|
|
29
|
+
[ colorClass ]: colorClass,
|
|
30
|
+
'has-css-opacity': opacity === 'css',
|
|
31
|
+
'has-alpha-channel-opacity': opacity === 'alpha-channel',
|
|
32
|
+
},
|
|
33
|
+
colorProps.className
|
|
34
|
+
);
|
|
26
35
|
|
|
27
|
-
const
|
|
28
|
-
backgroundColor:
|
|
36
|
+
const styles = {
|
|
37
|
+
backgroundColor: colorProps?.style?.backgroundColor,
|
|
29
38
|
color: colorClass ? undefined : customColor,
|
|
30
39
|
};
|
|
31
|
-
|
|
32
|
-
return <hr { ...useBlockProps.save( { className, style } ) } />;
|
|
40
|
+
return <hr { ...useBlockProps.save( { className, style: styles } ) } />;
|
|
33
41
|
}
|
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* External dependencies
|
|
3
|
+
*/
|
|
4
|
+
import { render } from '@testing-library/react';
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* WordPress dependencies
|
|
8
|
+
*/
|
|
9
|
+
import { useBlockProps } from '@wordpress/block-editor';
|
|
10
|
+
|
|
11
|
+
/**
|
|
12
|
+
* Internal dependencies
|
|
13
|
+
*/
|
|
14
|
+
import SeparatorEdit from '../edit';
|
|
15
|
+
|
|
16
|
+
jest.mock( '@wordpress/block-editor', () => ( {
|
|
17
|
+
...jest.requireActual( '@wordpress/block-editor' ),
|
|
18
|
+
useBlockProps: jest.fn(),
|
|
19
|
+
} ) );
|
|
20
|
+
|
|
21
|
+
const defaultAttributes = {
|
|
22
|
+
backgroundColor: undefined,
|
|
23
|
+
opacity: 'alpha-channel',
|
|
24
|
+
style: {},
|
|
25
|
+
className: '',
|
|
26
|
+
};
|
|
27
|
+
const defaultProps = {
|
|
28
|
+
attributes: defaultAttributes,
|
|
29
|
+
setAttributes: jest.fn(),
|
|
30
|
+
};
|
|
31
|
+
|
|
32
|
+
describe( 'Separator block edit method', () => {
|
|
33
|
+
beforeEach( () => {
|
|
34
|
+
useBlockProps.mockClear();
|
|
35
|
+
} );
|
|
36
|
+
|
|
37
|
+
test( 'should add the has-alpha-channel-opacity class and no inline styles by default', () => {
|
|
38
|
+
render( <SeparatorEdit { ...defaultProps } /> );
|
|
39
|
+
expect( useBlockProps ).toHaveBeenCalledWith( {
|
|
40
|
+
className: 'has-alpha-channel-opacity',
|
|
41
|
+
style: undefined,
|
|
42
|
+
} );
|
|
43
|
+
} );
|
|
44
|
+
|
|
45
|
+
test( 'should add has-css-opacity class and no inline styles for deprecated block with no color specified', () => {
|
|
46
|
+
const props = {
|
|
47
|
+
...defaultProps,
|
|
48
|
+
attributes: { ...defaultAttributes, opacity: 'css' },
|
|
49
|
+
};
|
|
50
|
+
render( <SeparatorEdit { ...props } /> );
|
|
51
|
+
expect( useBlockProps ).toHaveBeenCalledWith( {
|
|
52
|
+
className: 'has-css-opacity',
|
|
53
|
+
style: undefined,
|
|
54
|
+
} );
|
|
55
|
+
} );
|
|
56
|
+
|
|
57
|
+
test( 'should add inline background style for block without dots style selected and custom color specified', () => {
|
|
58
|
+
const props = {
|
|
59
|
+
...defaultProps,
|
|
60
|
+
attributes: {
|
|
61
|
+
...defaultAttributes,
|
|
62
|
+
style: { color: { background: '#ff0000' } },
|
|
63
|
+
},
|
|
64
|
+
};
|
|
65
|
+
render( <SeparatorEdit { ...props } /> );
|
|
66
|
+
expect( useBlockProps ).toHaveBeenCalledWith( {
|
|
67
|
+
// For backwards compatibility the has-text-color class is also added even though it is only needed for
|
|
68
|
+
// is-style-dots as this class was always added to v1 blocks, so may be expected by themes and plugins.
|
|
69
|
+
className: 'has-text-color has-alpha-channel-opacity',
|
|
70
|
+
style: {
|
|
71
|
+
backgroundColor: '#ff0000',
|
|
72
|
+
color: '#ff0000',
|
|
73
|
+
},
|
|
74
|
+
} );
|
|
75
|
+
} );
|
|
76
|
+
|
|
77
|
+
test( 'should add inline color style for block with dots style selected and custom color specified', () => {
|
|
78
|
+
const props = {
|
|
79
|
+
...defaultProps,
|
|
80
|
+
attributes: {
|
|
81
|
+
...defaultAttributes,
|
|
82
|
+
className: 'is-style-dots',
|
|
83
|
+
style: { color: { background: '#ff0000' } },
|
|
84
|
+
},
|
|
85
|
+
};
|
|
86
|
+
render( <SeparatorEdit { ...props } /> );
|
|
87
|
+
expect( useBlockProps ).toHaveBeenCalledWith( {
|
|
88
|
+
className: 'has-text-color has-alpha-channel-opacity',
|
|
89
|
+
style: {
|
|
90
|
+
backgroundColor: '#ff0000',
|
|
91
|
+
color: '#ff0000',
|
|
92
|
+
},
|
|
93
|
+
} );
|
|
94
|
+
} );
|
|
95
|
+
|
|
96
|
+
test( 'should add color class when color from palette specified', () => {
|
|
97
|
+
const props = {
|
|
98
|
+
...defaultProps,
|
|
99
|
+
attributes: {
|
|
100
|
+
...defaultAttributes,
|
|
101
|
+
backgroundColor: 'banana',
|
|
102
|
+
},
|
|
103
|
+
};
|
|
104
|
+
render( <SeparatorEdit { ...props } /> );
|
|
105
|
+
// Note that only the manual addition of the text color class can be checked as the
|
|
106
|
+
// background color classes are added by useBlockProps which has to be mocked.
|
|
107
|
+
expect( useBlockProps ).toHaveBeenCalledWith( {
|
|
108
|
+
className:
|
|
109
|
+
'has-text-color has-banana-color has-alpha-channel-opacity',
|
|
110
|
+
style: undefined,
|
|
111
|
+
} );
|
|
112
|
+
} );
|
|
113
|
+
} );
|
package/src/separator/theme.scss
CHANGED
|
@@ -1,9 +1,15 @@
|
|
|
1
|
+
// Import styles for rendering the static content of deprecated block versions.
|
|
2
|
+
@import "./deprecated.scss";
|
|
3
|
+
|
|
1
4
|
.wp-block-separator {
|
|
2
5
|
border: none;
|
|
3
6
|
border-bottom: 2px solid currentColor;
|
|
4
7
|
margin-left: auto;
|
|
5
8
|
margin-right: auto;
|
|
6
|
-
|
|
9
|
+
|
|
10
|
+
&.has-alpha-channel-opacity {
|
|
11
|
+
opacity: initial;
|
|
12
|
+
}
|
|
7
13
|
|
|
8
14
|
// Default, thin style
|
|
9
15
|
&:not(.is-style-wide):not(.is-style-dots) {
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* WordPress dependencies
|
|
3
|
+
*/
|
|
4
|
+
import { useEffect, useState } from '@wordpress/element';
|
|
5
|
+
import { usePrevious } from '@wordpress/compose';
|
|
6
|
+
|
|
7
|
+
export default function useDeprecatedOpacity(
|
|
8
|
+
opacity,
|
|
9
|
+
currentColor,
|
|
10
|
+
setAttributes
|
|
11
|
+
) {
|
|
12
|
+
const [
|
|
13
|
+
deprecatedOpacityWithNoColor,
|
|
14
|
+
setDeprecatedOpacityWithNoColor,
|
|
15
|
+
] = useState( false );
|
|
16
|
+
const previousColor = usePrevious( currentColor );
|
|
17
|
+
|
|
18
|
+
// A separator with no color set will always have previousColor set to undefined,
|
|
19
|
+
// and we need to differentiate these from those with color set that will return
|
|
20
|
+
// previousColor as undefined on the first render.
|
|
21
|
+
useEffect( () => {
|
|
22
|
+
if ( opacity === 'css' && ! currentColor && ! previousColor ) {
|
|
23
|
+
setDeprecatedOpacityWithNoColor( true );
|
|
24
|
+
}
|
|
25
|
+
}, [ currentColor, previousColor, opacity ] );
|
|
26
|
+
|
|
27
|
+
// For deprecated blocks, that have a default 0.4 css opacity set, we
|
|
28
|
+
// need to remove this if the current color is changed, or a color is added.
|
|
29
|
+
// In these instances the opacity attribute is set back to the default of
|
|
30
|
+
// alpha-channel which allows a new custom opacity to be set via the color picker.
|
|
31
|
+
useEffect( () => {
|
|
32
|
+
if (
|
|
33
|
+
opacity === 'css' &&
|
|
34
|
+
( ( deprecatedOpacityWithNoColor && currentColor ) ||
|
|
35
|
+
( previousColor && currentColor !== previousColor ) )
|
|
36
|
+
) {
|
|
37
|
+
setAttributes( { opacity: 'alpha-channel' } );
|
|
38
|
+
setDeprecatedOpacityWithNoColor( false );
|
|
39
|
+
}
|
|
40
|
+
}, [ deprecatedOpacityWithNoColor, currentColor, previousColor ] );
|
|
41
|
+
}
|
package/src/site-logo/block.json
CHANGED
package/src/site-logo/edit.js
CHANGED
|
@@ -417,8 +417,9 @@ export default function LogoEdit( {
|
|
|
417
417
|
};
|
|
418
418
|
|
|
419
419
|
const setIcon = ( newValue ) =>
|
|
420
|
+
// The new value needs to be `null` to reset the Site Icon.
|
|
420
421
|
editEntityRecord( 'root', 'site', undefined, {
|
|
421
|
-
site_icon: newValue,
|
|
422
|
+
site_icon: newValue ?? null,
|
|
422
423
|
} );
|
|
423
424
|
|
|
424
425
|
let alt = null;
|