@wordpress/block-library 6.0.25 → 6.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +4 -0
- package/LICENSE.md +1 -1
- package/build/archives/index.js +1 -0
- package/build/archives/index.js.map +1 -1
- package/build/audio/edit.js +19 -4
- package/build/audio/edit.js.map +1 -1
- package/build/audio/index.js +1 -0
- package/build/audio/index.js.map +1 -1
- package/build/block/index.js +1 -0
- package/build/block/index.js.map +1 -1
- package/build/button/edit.native.js +1 -1
- package/build/button/edit.native.js.map +1 -1
- package/build/button/index.js +5 -1
- package/build/button/index.js.map +1 -1
- package/build/buttons/edit.js +6 -0
- package/build/buttons/edit.js.map +1 -1
- package/build/buttons/edit.native.js +16 -6
- package/build/buttons/edit.native.js.map +1 -1
- package/build/buttons/index.js +1 -0
- package/build/buttons/index.js.map +1 -1
- package/build/buttons/transforms.js +1 -0
- package/build/buttons/transforms.js.map +1 -1
- package/build/calendar/index.js +1 -0
- package/build/calendar/index.js.map +1 -1
- package/build/categories/index.js +1 -0
- package/build/categories/index.js.map +1 -1
- package/build/code/index.js +6 -1
- package/build/code/index.js.map +1 -1
- package/build/column/index.js +1 -0
- package/build/column/index.js.map +1 -1
- package/build/columns/index.js +11 -0
- package/build/columns/index.js.map +1 -1
- package/build/comment-author-avatar/edit.js +5 -2
- package/build/comment-author-avatar/edit.js.map +1 -1
- package/build/comment-author-avatar/index.js +7 -2
- package/build/comment-author-avatar/index.js.map +1 -1
- package/build/comment-author-name/index.js +1 -0
- package/build/comment-author-name/index.js.map +1 -1
- package/build/comment-content/index.js +1 -0
- package/build/comment-content/index.js.map +1 -1
- package/build/comment-date/index.js +1 -0
- package/build/comment-date/index.js.map +1 -1
- package/build/comment-edit-link/index.js +2 -1
- package/build/comment-edit-link/index.js.map +1 -1
- package/build/comment-reply-link/index.js +1 -0
- package/build/comment-reply-link/index.js.map +1 -1
- package/build/comment-template/edit.js +117 -26
- package/build/comment-template/edit.js.map +1 -1
- package/build/comment-template/index.js +4 -2
- package/build/comment-template/index.js.map +1 -1
- package/build/comment-template/util.js +68 -0
- package/build/comment-template/util.js.map +1 -0
- package/build/comments-pagination/comments-pagination-arrow-controls.js +39 -0
- package/build/comments-pagination/comments-pagination-arrow-controls.js.map +1 -0
- package/build/comments-pagination/edit.js +79 -0
- package/build/comments-pagination/edit.js.map +1 -0
- package/build/comments-pagination/index.js +71 -0
- package/build/comments-pagination/index.js.map +1 -0
- package/build/comments-pagination/save.js +18 -0
- package/build/comments-pagination/save.js.map +1 -0
- package/build/comments-pagination-next/edit.js +54 -0
- package/build/comments-pagination-next/edit.js.map +1 -0
- package/build/comments-pagination-next/index.js +66 -0
- package/build/comments-pagination-next/index.js.map +1 -0
- package/build/comments-pagination-numbers/edit.js +47 -0
- package/build/comments-pagination-numbers/edit.js.map +1 -0
- package/build/comments-pagination-numbers/index.js +46 -0
- package/build/comments-pagination-numbers/index.js.map +1 -0
- package/build/comments-pagination-previous/edit.js +54 -0
- package/build/comments-pagination-previous/edit.js.map +1 -0
- package/build/comments-pagination-previous/index.js +66 -0
- package/build/comments-pagination-previous/index.js.map +1 -0
- package/build/comments-query-loop/edit/comments-inspector-controls.js +102 -0
- package/build/comments-query-loop/edit/comments-inspector-controls.js.map +1 -0
- package/build/comments-query-loop/edit.js +23 -28
- package/build/comments-query-loop/edit.js.map +1 -1
- package/build/comments-query-loop/index.js +15 -7
- package/build/comments-query-loop/index.js.map +1 -1
- package/build/cover/edit.js +2 -1
- package/build/cover/edit.js.map +1 -1
- package/build/cover/edit.native.js +40 -32
- package/build/cover/edit.native.js.map +1 -1
- package/build/cover/index.js +1 -0
- package/build/cover/index.js.map +1 -1
- package/build/cover/overlay-color-settings.native.js +11 -1
- package/build/cover/overlay-color-settings.native.js.map +1 -1
- package/build/embed/deprecated.js +1 -0
- package/build/embed/deprecated.js.map +1 -1
- package/build/embed/edit.native.js +23 -20
- package/build/embed/edit.native.js.map +1 -1
- package/build/embed/embed-controls.native.js +69 -0
- package/build/embed/embed-controls.native.js.map +1 -0
- package/build/embed/embed-link-settings.native.js +101 -0
- package/build/embed/embed-link-settings.native.js.map +1 -0
- package/build/embed/embed-loading.js +1 -3
- package/build/embed/embed-loading.js.map +1 -1
- package/build/embed/embed-placeholder.native.js +9 -2
- package/build/embed/embed-placeholder.native.js.map +1 -1
- package/build/embed/index.js +1 -0
- package/build/embed/index.js.map +1 -1
- package/build/embed/transforms.js +1 -0
- package/build/embed/transforms.js.map +1 -1
- package/build/embed/util.js +1 -0
- package/build/embed/util.js.map +1 -1
- package/build/file/edit.native.js +5 -2
- package/build/file/edit.native.js.map +1 -1
- package/build/file/index.js +1 -0
- package/build/file/index.js.map +1 -1
- package/build/freeform/index.js +1 -0
- package/build/freeform/index.js.map +1 -1
- package/build/gallery/deprecated.js +4 -0
- package/build/gallery/deprecated.js.map +1 -1
- package/build/gallery/edit.js +31 -12
- 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/index.js +1 -0
- package/build/gallery/index.js.map +1 -1
- package/build/group/index.js +19 -1
- package/build/group/index.js.map +1 -1
- package/build/heading/edit.js +2 -0
- package/build/heading/edit.js.map +1 -1
- package/build/heading/index.js +1 -0
- package/build/heading/index.js.map +1 -1
- package/build/heading/transforms.js +1 -0
- package/build/heading/transforms.js.map +1 -1
- package/build/home-link/index.js +1 -0
- package/build/home-link/index.js.map +1 -1
- package/build/html/index.js +1 -0
- package/build/html/index.js.map +1 -1
- package/build/image/edit.js +56 -5
- package/build/image/edit.js.map +1 -1
- package/build/image/edit.native.js +4 -4
- package/build/image/edit.native.js.map +1 -1
- package/build/image/image.js +15 -4
- package/build/image/image.js.map +1 -1
- package/build/image/index.js +5 -1
- package/build/image/index.js.map +1 -1
- package/build/index.js +12 -2
- package/build/index.js.map +1 -1
- package/build/latest-comments/index.js +1 -0
- package/build/latest-comments/index.js.map +1 -1
- package/build/latest-posts/deprecated.js +1 -0
- package/build/latest-posts/deprecated.js.map +1 -1
- package/build/latest-posts/edit.js +1 -1
- package/build/latest-posts/edit.js.map +1 -1
- package/build/latest-posts/index.js +1 -0
- package/build/latest-posts/index.js.map +1 -1
- package/build/list/index.js +1 -0
- package/build/list/index.js.map +1 -1
- package/build/loginout/index.js +1 -0
- package/build/loginout/index.js.map +1 -1
- package/build/media-text/index.js +1 -0
- package/build/media-text/index.js.map +1 -1
- package/build/missing/index.js +1 -0
- package/build/missing/index.js.map +1 -1
- package/build/more/index.js +1 -0
- package/build/more/index.js.map +1 -1
- package/build/navigation/edit/index.js +37 -9
- package/build/navigation/edit/index.js.map +1 -1
- package/build/navigation/edit/inner-blocks.js +3 -1
- package/build/navigation/edit/inner-blocks.js.map +1 -1
- package/build/navigation/edit/overlay-menu-icon.js +36 -0
- package/build/navigation/edit/overlay-menu-icon.js.map +1 -0
- package/build/navigation/edit/placeholder/index.js +11 -7
- package/build/navigation/edit/placeholder/index.js.map +1 -1
- package/build/navigation/edit/responsive-wrapper.js +11 -22
- package/build/navigation/edit/responsive-wrapper.js.map +1 -1
- package/build/navigation/index.js +10 -1
- package/build/navigation/index.js.map +1 -1
- package/build/navigation/menu-items-to-blocks.js +4 -1
- package/build/navigation/menu-items-to-blocks.js.map +1 -1
- package/build/navigation/use-navigation-entities.js +6 -3
- package/build/navigation/use-navigation-entities.js.map +1 -1
- package/build/navigation-area/edit.js +2 -1
- package/build/navigation-area/edit.js.map +1 -1
- package/build/navigation-area/index.js +2 -1
- package/build/navigation-area/index.js.map +1 -1
- package/build/navigation-link/edit.js +7 -0
- package/build/navigation-link/edit.js.map +1 -1
- package/build/navigation-link/index.js +1 -0
- package/build/navigation-link/index.js.map +1 -1
- package/build/navigation-submenu/edit.js +4 -1
- package/build/navigation-submenu/edit.js.map +1 -1
- package/build/navigation-submenu/index.js +1 -0
- package/build/navigation-submenu/index.js.map +1 -1
- package/build/nextpage/index.js +1 -0
- package/build/nextpage/index.js.map +1 -1
- package/build/page-list/edit.js +37 -10
- package/build/page-list/edit.js.map +1 -1
- package/build/page-list/index.js +6 -1
- package/build/page-list/index.js.map +1 -1
- package/build/paragraph/edit.js +12 -2
- package/build/paragraph/edit.js.map +1 -1
- package/build/paragraph/index.js +2 -1
- package/build/paragraph/index.js.map +1 -1
- package/build/paragraph/transforms.js +2 -1
- package/build/paragraph/transforms.js.map +1 -1
- package/build/pattern/index.js +1 -0
- package/build/pattern/index.js.map +1 -1
- package/build/post-author/index.js +2 -1
- package/build/post-author/index.js.map +1 -1
- package/build/post-author-name/edit.js +98 -0
- package/build/post-author-name/edit.js.map +1 -0
- package/build/post-author-name/index.js +70 -0
- package/build/post-author-name/index.js.map +1 -0
- package/build/post-comment/index.js +1 -0
- package/build/post-comment/index.js.map +1 -1
- package/build/post-comments/index.js +1 -0
- package/build/post-comments/index.js.map +1 -1
- package/build/post-comments-count/index.js +1 -0
- package/build/post-comments-count/index.js.map +1 -1
- package/build/post-comments-form/index.js +1 -0
- package/build/post-comments-form/index.js.map +1 -1
- package/build/post-comments-link/index.js +1 -0
- package/build/post-comments-link/index.js.map +1 -1
- package/build/post-content/index.js +1 -0
- package/build/post-content/index.js.map +1 -1
- package/build/post-date/index.js +1 -0
- package/build/post-date/index.js.map +1 -1
- package/build/post-excerpt/edit.js +2 -1
- package/build/post-excerpt/edit.js.map +1 -1
- package/build/post-excerpt/index.js +4 -0
- package/build/post-excerpt/index.js.map +1 -1
- package/build/post-excerpt/transforms.js +27 -0
- package/build/post-excerpt/transforms.js.map +1 -0
- package/build/post-featured-image/dimension-controls.js +74 -32
- package/build/post-featured-image/dimension-controls.js.map +1 -1
- package/build/post-featured-image/edit.js +52 -20
- package/build/post-featured-image/edit.js.map +1 -1
- package/build/post-featured-image/index.js +4 -0
- package/build/post-featured-image/index.js.map +1 -1
- package/build/post-navigation-link/index.js +1 -0
- package/build/post-navigation-link/index.js.map +1 -1
- package/build/post-template/edit.js +34 -7
- package/build/post-template/edit.js.map +1 -1
- package/build/post-template/index.js +2 -1
- package/build/post-template/index.js.map +1 -1
- package/build/post-terms/index.js +1 -0
- package/build/post-terms/index.js.map +1 -1
- package/build/post-title/index.js +1 -0
- package/build/post-title/index.js.map +1 -1
- package/build/preformatted/edit.native.js +3 -6
- package/build/preformatted/edit.native.js.map +1 -1
- package/build/preformatted/index.js +1 -0
- package/build/preformatted/index.js.map +1 -1
- package/build/pullquote/index.js +8 -1
- package/build/pullquote/index.js.map +1 -1
- package/build/query/deprecated.js +96 -3
- package/build/query/deprecated.js.map +1 -1
- package/build/query/edit/index.js +4 -4
- package/build/query/edit/index.js.map +1 -1
- package/build/query/edit/inspector-controls/author-control.js +102 -0
- package/build/query/edit/inspector-controls/author-control.js.map +1 -0
- package/build/query/edit/inspector-controls/index.js +166 -0
- package/build/query/edit/inspector-controls/index.js.map +1 -0
- package/build/query/edit/inspector-controls/order-control.js +55 -0
- package/build/query/edit/inspector-controls/order-control.js.map +1 -0
- package/build/query/edit/inspector-controls/taxonomy-controls.js +158 -0
- package/build/query/edit/inspector-controls/taxonomy-controls.js.map +1 -0
- package/build/query/index.js +3 -3
- package/build/query/utils.js +49 -38
- package/build/query/utils.js.map +1 -1
- package/build/query/variations.js +0 -4
- package/build/query/variations.js.map +1 -1
- package/build/query-pagination/index.js +2 -1
- package/build/query-pagination/index.js.map +1 -1
- package/build/query-pagination-next/index.js +2 -1
- package/build/query-pagination-next/index.js.map +1 -1
- package/build/query-pagination-numbers/index.js +2 -1
- package/build/query-pagination-numbers/index.js.map +1 -1
- package/build/query-pagination-previous/index.js +2 -1
- package/build/query-pagination-previous/index.js.map +1 -1
- package/build/query-title/index.js +1 -0
- package/build/query-title/index.js.map +1 -1
- package/build/quote/index.js +1 -0
- package/build/quote/index.js.map +1 -1
- package/build/rss/index.js +1 -0
- package/build/rss/index.js.map +1 -1
- package/build/search/edit.js +5 -3
- package/build/search/edit.js.map +1 -1
- package/build/search/edit.native.js +2 -2
- package/build/search/edit.native.js.map +1 -1
- package/build/search/index.js +8 -1
- package/build/search/index.js.map +1 -1
- package/build/separator/index.js +1 -0
- package/build/separator/index.js.map +1 -1
- package/build/shortcode/index.js +1 -0
- package/build/shortcode/index.js.map +1 -1
- package/build/site-logo/edit.js +0 -25
- package/build/site-logo/edit.js.map +1 -1
- package/build/site-logo/index.js +5 -1
- package/build/site-logo/index.js.map +1 -1
- package/build/site-logo/transforms.js +31 -0
- package/build/site-logo/transforms.js.map +1 -0
- package/build/site-tagline/index.js +2 -1
- package/build/site-tagline/index.js.map +1 -1
- package/build/site-title/index.js +4 -0
- package/build/site-title/index.js.map +1 -1
- package/build/site-title/transforms.js +31 -0
- package/build/site-title/transforms.js.map +1 -0
- package/build/social-link/index.js +2 -1
- package/build/social-link/index.js.map +1 -1
- package/build/social-links/edit.js +29 -23
- 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 +111 -0
- package/build/spacer/controls.js.map +1 -0
- package/build/spacer/controls.native.js +95 -0
- package/build/spacer/controls.native.js.map +1 -0
- package/build/spacer/deprecated.js +53 -0
- package/build/spacer/deprecated.js.map +1 -0
- package/build/spacer/edit.js +117 -98
- package/build/spacer/edit.js.map +1 -1
- package/build/spacer/edit.native.js +76 -0
- package/build/spacer/edit.native.js.map +1 -0
- package/build/spacer/index.js +8 -4
- package/build/spacer/index.js.map +1 -1
- package/build/spacer/save.js +6 -3
- package/build/spacer/save.js.map +1 -1
- package/build/table/index.js +7 -1
- package/build/table/index.js.map +1 -1
- package/build/table-of-contents/index.js +1 -0
- package/build/table-of-contents/index.js.map +1 -1
- package/build/tag-cloud/index.js +1 -0
- package/build/tag-cloud/index.js.map +1 -1
- package/build/template-part/index.js +1 -0
- package/build/template-part/index.js.map +1 -1
- package/build/term-description/index.js +1 -0
- package/build/term-description/index.js.map +1 -1
- package/build/text-columns/index.js +1 -0
- package/build/text-columns/index.js.map +1 -1
- package/build/verse/index.js +1 -0
- package/build/verse/index.js.map +1 -1
- package/build/video/index.js +1 -0
- package/build/video/index.js.map +1 -1
- package/build-module/archives/index.js +1 -0
- package/build-module/archives/index.js.map +1 -1
- package/build-module/audio/edit.js +17 -5
- package/build-module/audio/edit.js.map +1 -1
- package/build-module/audio/index.js +1 -0
- package/build-module/audio/index.js.map +1 -1
- package/build-module/block/index.js +1 -0
- package/build-module/block/index.js.map +1 -1
- package/build-module/button/edit.native.js +1 -1
- package/build-module/button/edit.native.js.map +1 -1
- package/build-module/button/index.js +5 -1
- package/build-module/button/index.js.map +1 -1
- package/build-module/buttons/edit.js +6 -0
- package/build-module/buttons/edit.js.map +1 -1
- package/build-module/buttons/edit.native.js +17 -7
- package/build-module/buttons/edit.native.js.map +1 -1
- package/build-module/buttons/index.js +1 -0
- package/build-module/buttons/index.js.map +1 -1
- package/build-module/buttons/transforms.js +1 -0
- package/build-module/buttons/transforms.js.map +1 -1
- package/build-module/calendar/index.js +1 -0
- package/build-module/calendar/index.js.map +1 -1
- package/build-module/categories/index.js +1 -0
- package/build-module/categories/index.js.map +1 -1
- package/build-module/code/index.js +6 -1
- package/build-module/code/index.js.map +1 -1
- package/build-module/column/index.js +1 -0
- package/build-module/column/index.js.map +1 -1
- package/build-module/columns/index.js +11 -0
- package/build-module/columns/index.js.map +1 -1
- package/build-module/comment-author-avatar/edit.js +6 -3
- package/build-module/comment-author-avatar/edit.js.map +1 -1
- package/build-module/comment-author-avatar/index.js +7 -2
- package/build-module/comment-author-avatar/index.js.map +1 -1
- package/build-module/comment-author-name/index.js +1 -0
- package/build-module/comment-author-name/index.js.map +1 -1
- package/build-module/comment-content/index.js +1 -0
- package/build-module/comment-content/index.js.map +1 -1
- package/build-module/comment-date/index.js +1 -0
- package/build-module/comment-date/index.js.map +1 -1
- package/build-module/comment-edit-link/index.js +2 -1
- package/build-module/comment-edit-link/index.js.map +1 -1
- package/build-module/comment-reply-link/index.js +1 -0
- package/build-module/comment-reply-link/index.js.map +1 -1
- package/build-module/comment-template/edit.js +116 -26
- package/build-module/comment-template/edit.js.map +1 -1
- package/build-module/comment-template/index.js +4 -2
- package/build-module/comment-template/index.js.map +1 -1
- package/build-module/comment-template/util.js +59 -0
- package/build-module/comment-template/util.js.map +1 -0
- package/build-module/comments-pagination/comments-pagination-arrow-controls.js +30 -0
- package/build-module/comments-pagination/comments-pagination-arrow-controls.js.map +1 -0
- package/build-module/comments-pagination/edit.js +66 -0
- package/build-module/comments-pagination/edit.js.map +1 -0
- package/build-module/comments-pagination/index.js +57 -0
- package/build-module/comments-pagination/index.js.map +1 -0
- package/build-module/comments-pagination/save.js +10 -0
- package/build-module/comments-pagination/save.js.map +1 -0
- package/build-module/comments-pagination-next/edit.js +41 -0
- package/build-module/comments-pagination-next/edit.js.map +1 -0
- package/build-module/comments-pagination-next/index.js +53 -0
- package/build-module/comments-pagination-next/index.js.map +1 -0
- package/build-module/comments-pagination-numbers/edit.js +40 -0
- package/build-module/comments-pagination-numbers/edit.js.map +1 -0
- package/build-module/comments-pagination-numbers/index.js +33 -0
- package/build-module/comments-pagination-numbers/index.js.map +1 -0
- package/build-module/comments-pagination-previous/edit.js +41 -0
- package/build-module/comments-pagination-previous/edit.js.map +1 -0
- package/build-module/comments-pagination-previous/index.js +53 -0
- package/build-module/comments-pagination-previous/index.js.map +1 -0
- package/build-module/comments-query-loop/edit/comments-inspector-controls.js +91 -0
- package/build-module/comments-query-loop/edit/comments-inspector-controls.js.map +1 -0
- package/build-module/comments-query-loop/edit.js +24 -28
- package/build-module/comments-query-loop/edit.js.map +1 -1
- package/build-module/comments-query-loop/index.js +15 -7
- package/build-module/comments-query-loop/index.js.map +1 -1
- package/build-module/cover/edit.js +2 -1
- package/build-module/cover/edit.js.map +1 -1
- package/build-module/cover/edit.native.js +41 -34
- package/build-module/cover/edit.native.js.map +1 -1
- package/build-module/cover/index.js +1 -0
- package/build-module/cover/index.js.map +1 -1
- package/build-module/cover/overlay-color-settings.native.js +11 -1
- package/build-module/cover/overlay-color-settings.native.js.map +1 -1
- package/build-module/embed/deprecated.js +1 -0
- package/build-module/embed/deprecated.js.map +1 -1
- package/build-module/embed/edit.native.js +24 -21
- package/build-module/embed/edit.native.js.map +1 -1
- package/build-module/embed/embed-controls.native.js +54 -0
- package/build-module/embed/embed-controls.native.js.map +1 -0
- package/build-module/embed/embed-link-settings.native.js +90 -0
- package/build-module/embed/embed-link-settings.native.js.map +1 -0
- package/build-module/embed/embed-loading.js +1 -2
- package/build-module/embed/embed-loading.js.map +1 -1
- package/build-module/embed/embed-placeholder.native.js +9 -2
- package/build-module/embed/embed-placeholder.native.js.map +1 -1
- package/build-module/embed/index.js +1 -0
- package/build-module/embed/index.js.map +1 -1
- package/build-module/embed/transforms.js +1 -0
- package/build-module/embed/transforms.js.map +1 -1
- package/build-module/embed/util.js +1 -0
- package/build-module/embed/util.js.map +1 -1
- package/build-module/file/edit.native.js +4 -2
- package/build-module/file/edit.native.js.map +1 -1
- package/build-module/file/index.js +1 -0
- package/build-module/file/index.js.map +1 -1
- package/build-module/freeform/index.js +1 -0
- package/build-module/freeform/index.js.map +1 -1
- package/build-module/gallery/deprecated.js +4 -0
- package/build-module/gallery/deprecated.js.map +1 -1
- package/build-module/gallery/edit.js +32 -13
- 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/index.js +1 -0
- package/build-module/gallery/index.js.map +1 -1
- package/build-module/group/index.js +19 -1
- package/build-module/group/index.js.map +1 -1
- package/build-module/heading/edit.js +3 -1
- package/build-module/heading/edit.js.map +1 -1
- package/build-module/heading/index.js +1 -0
- package/build-module/heading/index.js.map +1 -1
- package/build-module/heading/transforms.js +1 -0
- package/build-module/heading/transforms.js.map +1 -1
- package/build-module/home-link/index.js +1 -0
- package/build-module/home-link/index.js.map +1 -1
- package/build-module/html/index.js +1 -0
- package/build-module/html/index.js.map +1 -1
- package/build-module/image/edit.js +52 -4
- package/build-module/image/edit.js.map +1 -1
- package/build-module/image/edit.native.js +4 -4
- package/build-module/image/edit.native.js.map +1 -1
- package/build-module/image/image.js +16 -5
- package/build-module/image/image.js.map +1 -1
- package/build-module/image/index.js +5 -1
- package/build-module/image/index.js.map +1 -1
- package/build-module/index.js +7 -2
- package/build-module/index.js.map +1 -1
- package/build-module/latest-comments/index.js +1 -0
- package/build-module/latest-comments/index.js.map +1 -1
- package/build-module/latest-posts/deprecated.js +1 -0
- package/build-module/latest-posts/deprecated.js.map +1 -1
- package/build-module/latest-posts/edit.js +1 -1
- package/build-module/latest-posts/edit.js.map +1 -1
- package/build-module/latest-posts/index.js +1 -0
- package/build-module/latest-posts/index.js.map +1 -1
- package/build-module/list/index.js +1 -0
- package/build-module/list/index.js.map +1 -1
- package/build-module/loginout/index.js +1 -0
- package/build-module/loginout/index.js.map +1 -1
- package/build-module/media-text/index.js +1 -0
- package/build-module/media-text/index.js.map +1 -1
- package/build-module/missing/index.js +1 -0
- package/build-module/missing/index.js.map +1 -1
- package/build-module/more/index.js +1 -0
- package/build-module/more/index.js.map +1 -1
- package/build-module/navigation/edit/index.js +36 -9
- package/build-module/navigation/edit/index.js.map +1 -1
- package/build-module/navigation/edit/inner-blocks.js +3 -1
- package/build-module/navigation/edit/inner-blocks.js.map +1 -1
- package/build-module/navigation/edit/overlay-menu-icon.js +28 -0
- package/build-module/navigation/edit/overlay-menu-icon.js.map +1 -0
- package/build-module/navigation/edit/placeholder/index.js +11 -7
- package/build-module/navigation/edit/placeholder/index.js.map +1 -1
- package/build-module/navigation/edit/responsive-wrapper.js +10 -21
- package/build-module/navigation/edit/responsive-wrapper.js.map +1 -1
- package/build-module/navigation/index.js +10 -1
- package/build-module/navigation/index.js.map +1 -1
- package/build-module/navigation/menu-items-to-blocks.js +4 -1
- package/build-module/navigation/menu-items-to-blocks.js.map +1 -1
- package/build-module/navigation/use-navigation-entities.js +6 -3
- package/build-module/navigation/use-navigation-entities.js.map +1 -1
- package/build-module/navigation-area/edit.js +2 -1
- package/build-module/navigation-area/edit.js.map +1 -1
- package/build-module/navigation-area/index.js +2 -1
- package/build-module/navigation-area/index.js.map +1 -1
- package/build-module/navigation-link/edit.js +7 -0
- package/build-module/navigation-link/edit.js.map +1 -1
- package/build-module/navigation-link/index.js +1 -0
- package/build-module/navigation-link/index.js.map +1 -1
- package/build-module/navigation-submenu/edit.js +4 -1
- package/build-module/navigation-submenu/edit.js.map +1 -1
- package/build-module/navigation-submenu/index.js +1 -0
- package/build-module/navigation-submenu/index.js.map +1 -1
- package/build-module/nextpage/index.js +1 -0
- package/build-module/nextpage/index.js.map +1 -1
- package/build-module/page-list/edit.js +38 -11
- package/build-module/page-list/edit.js.map +1 -1
- package/build-module/page-list/index.js +6 -1
- package/build-module/page-list/index.js.map +1 -1
- package/build-module/paragraph/edit.js +13 -3
- package/build-module/paragraph/edit.js.map +1 -1
- package/build-module/paragraph/index.js +2 -1
- package/build-module/paragraph/index.js.map +1 -1
- package/build-module/paragraph/transforms.js +2 -1
- package/build-module/paragraph/transforms.js.map +1 -1
- package/build-module/pattern/index.js +1 -0
- package/build-module/pattern/index.js.map +1 -1
- package/build-module/post-author/index.js +2 -1
- package/build-module/post-author/index.js.map +1 -1
- package/build-module/post-author-name/edit.js +85 -0
- package/build-module/post-author-name/edit.js.map +1 -0
- package/build-module/post-author-name/index.js +61 -0
- package/build-module/post-author-name/index.js.map +1 -0
- package/build-module/post-comment/index.js +1 -0
- package/build-module/post-comment/index.js.map +1 -1
- package/build-module/post-comments/index.js +1 -0
- package/build-module/post-comments/index.js.map +1 -1
- package/build-module/post-comments-count/index.js +1 -0
- package/build-module/post-comments-count/index.js.map +1 -1
- package/build-module/post-comments-form/index.js +1 -0
- package/build-module/post-comments-form/index.js.map +1 -1
- package/build-module/post-comments-link/index.js +1 -0
- package/build-module/post-comments-link/index.js.map +1 -1
- package/build-module/post-content/index.js +1 -0
- package/build-module/post-content/index.js.map +1 -1
- package/build-module/post-date/index.js +1 -0
- package/build-module/post-date/index.js.map +1 -1
- package/build-module/post-excerpt/edit.js +2 -1
- package/build-module/post-excerpt/edit.js.map +1 -1
- package/build-module/post-excerpt/index.js +3 -0
- package/build-module/post-excerpt/index.js.map +1 -1
- package/build-module/post-excerpt/transforms.js +18 -0
- package/build-module/post-excerpt/transforms.js.map +1 -0
- package/build-module/post-featured-image/dimension-controls.js +76 -31
- package/build-module/post-featured-image/dimension-controls.js.map +1 -1
- package/build-module/post-featured-image/edit.js +54 -22
- package/build-module/post-featured-image/edit.js.map +1 -1
- package/build-module/post-featured-image/index.js +4 -0
- package/build-module/post-featured-image/index.js.map +1 -1
- package/build-module/post-navigation-link/index.js +1 -0
- package/build-module/post-navigation-link/index.js.map +1 -1
- package/build-module/post-template/edit.js +34 -7
- package/build-module/post-template/edit.js.map +1 -1
- package/build-module/post-template/index.js +2 -1
- package/build-module/post-template/index.js.map +1 -1
- package/build-module/post-terms/index.js +1 -0
- package/build-module/post-terms/index.js.map +1 -1
- package/build-module/post-title/index.js +1 -0
- package/build-module/post-title/index.js.map +1 -1
- package/build-module/preformatted/edit.native.js +3 -3
- package/build-module/preformatted/edit.native.js.map +1 -1
- package/build-module/preformatted/index.js +1 -0
- package/build-module/preformatted/index.js.map +1 -1
- package/build-module/pullquote/index.js +8 -1
- package/build-module/pullquote/index.js.map +1 -1
- package/build-module/query/deprecated.js +95 -4
- package/build-module/query/deprecated.js.map +1 -1
- package/build-module/query/edit/index.js +3 -3
- package/build-module/query/edit/index.js.map +1 -1
- package/build-module/query/edit/inspector-controls/author-control.js +89 -0
- package/build-module/query/edit/inspector-controls/author-control.js.map +1 -0
- package/build-module/query/edit/inspector-controls/index.js +149 -0
- package/build-module/query/edit/inspector-controls/index.js.map +1 -0
- package/build-module/query/edit/inspector-controls/order-control.js +45 -0
- package/build-module/query/edit/inspector-controls/order-control.js.map +1 -0
- package/build-module/query/edit/inspector-controls/taxonomy-controls.js +145 -0
- package/build-module/query/edit/inspector-controls/taxonomy-controls.js.map +1 -0
- package/build-module/query/index.js +3 -3
- package/build-module/query/utils.js +43 -35
- package/build-module/query/utils.js.map +1 -1
- package/build-module/query/variations.js +0 -4
- package/build-module/query/variations.js.map +1 -1
- package/build-module/query-pagination/index.js +2 -1
- package/build-module/query-pagination/index.js.map +1 -1
- package/build-module/query-pagination-next/index.js +2 -1
- package/build-module/query-pagination-next/index.js.map +1 -1
- package/build-module/query-pagination-numbers/index.js +2 -1
- package/build-module/query-pagination-numbers/index.js.map +1 -1
- package/build-module/query-pagination-previous/index.js +2 -1
- package/build-module/query-pagination-previous/index.js.map +1 -1
- package/build-module/query-title/index.js +1 -0
- package/build-module/query-title/index.js.map +1 -1
- package/build-module/quote/index.js +1 -0
- package/build-module/quote/index.js.map +1 -1
- package/build-module/rss/index.js +1 -0
- package/build-module/rss/index.js.map +1 -1
- package/build-module/search/edit.js +5 -3
- package/build-module/search/edit.js.map +1 -1
- package/build-module/search/edit.native.js +2 -2
- package/build-module/search/edit.native.js.map +1 -1
- package/build-module/search/index.js +8 -1
- package/build-module/search/index.js.map +1 -1
- package/build-module/separator/index.js +1 -0
- package/build-module/separator/index.js.map +1 -1
- package/build-module/shortcode/index.js +1 -0
- package/build-module/shortcode/index.js.map +1 -1
- package/build-module/site-logo/edit.js +0 -25
- package/build-module/site-logo/edit.js.map +1 -1
- package/build-module/site-logo/index.js +4 -1
- package/build-module/site-logo/index.js.map +1 -1
- package/build-module/site-logo/transforms.js +22 -0
- package/build-module/site-logo/transforms.js.map +1 -0
- package/build-module/site-tagline/index.js +2 -1
- package/build-module/site-tagline/index.js.map +1 -1
- package/build-module/site-title/index.js +3 -0
- package/build-module/site-title/index.js.map +1 -1
- package/build-module/site-title/transforms.js +22 -0
- package/build-module/site-title/transforms.js.map +1 -0
- package/build-module/social-link/index.js +2 -1
- package/build-module/social-link/index.js.map +1 -1
- package/build-module/social-links/edit.js +29 -23
- 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 +101 -0
- package/build-module/spacer/controls.js.map +1 -0
- package/build-module/spacer/controls.native.js +82 -0
- package/build-module/spacer/controls.native.js.map +1 -0
- package/build-module/spacer/deprecated.js +44 -0
- package/build-module/spacer/deprecated.js.map +1 -0
- package/build-module/spacer/edit.js +114 -95
- package/build-module/spacer/edit.js.map +1 -1
- package/build-module/spacer/edit.native.js +61 -0
- package/build-module/spacer/edit.native.js.map +1 -0
- package/build-module/spacer/index.js +7 -4
- package/build-module/spacer/index.js.map +1 -1
- package/build-module/spacer/save.js +6 -3
- package/build-module/spacer/save.js.map +1 -1
- package/build-module/table/index.js +7 -1
- package/build-module/table/index.js.map +1 -1
- package/build-module/table-of-contents/index.js +1 -0
- package/build-module/table-of-contents/index.js.map +1 -1
- package/build-module/tag-cloud/index.js +1 -0
- package/build-module/tag-cloud/index.js.map +1 -1
- package/build-module/template-part/index.js +1 -0
- package/build-module/template-part/index.js.map +1 -1
- package/build-module/term-description/index.js +1 -0
- package/build-module/term-description/index.js.map +1 -1
- package/build-module/text-columns/index.js +1 -0
- package/build-module/text-columns/index.js.map +1 -1
- package/build-module/verse/index.js +1 -0
- package/build-module/verse/index.js.map +1 -1
- package/build-module/video/index.js +1 -0
- package/build-module/video/index.js.map +1 -1
- package/build-style/audio/editor-rtl.css +11 -0
- package/build-style/audio/editor.css +11 -0
- package/build-style/code/theme-rtl.css +5 -3
- package/build-style/code/theme.css +5 -3
- package/build-style/columns/editor-rtl.css +0 -10
- package/build-style/columns/editor.css +0 -10
- package/build-style/columns/style-rtl.css +8 -21
- package/build-style/columns/style.css +8 -21
- package/build-style/comment-template/style-rtl.css +91 -0
- package/build-style/comment-template/style.css +91 -0
- package/build-style/{home-link/style.css → comments-pagination/editor-rtl.css} +18 -22
- package/build-style/comments-pagination/editor.css +102 -0
- package/build-style/{home-link → comments-pagination}/style-rtl.css +21 -21
- package/build-style/comments-pagination/style.css +106 -0
- package/build-style/comments-pagination-numbers/editor-rtl.css +85 -0
- package/build-style/comments-pagination-numbers/editor.css +86 -0
- package/build-style/comments-query-loop/editor-rtl.css +79 -0
- package/build-style/comments-query-loop/editor.css +79 -0
- package/build-style/common-rtl.css +19 -0
- package/build-style/common.css +19 -0
- package/build-style/cover/style-rtl.css +4 -0
- package/build-style/cover/style.css +4 -0
- package/build-style/editor-rtl.css +96 -58
- package/build-style/editor.css +99 -58
- package/build-style/embed/editor-rtl.css +0 -12
- package/build-style/embed/editor.css +0 -12
- package/build-style/gallery/editor-rtl.css +7 -18
- package/build-style/gallery/editor.css +7 -18
- package/build-style/gallery/style-rtl.css +3 -0
- package/build-style/gallery/style.css +3 -0
- package/build-style/group/theme-rtl.css +1 -1
- package/build-style/group/theme.css +1 -1
- package/build-style/latest-posts/editor-rtl.css +7 -0
- package/build-style/latest-posts/editor.css +7 -0
- package/build-style/latest-posts/style-rtl.css +0 -9
- package/build-style/latest-posts/style.css +0 -9
- package/build-style/navigation/editor-rtl.css +16 -2
- package/build-style/navigation/editor.css +16 -2
- package/build-style/navigation/style-rtl.css +18 -7
- package/build-style/navigation/style.css +18 -7
- package/build-style/page-list/editor-rtl.css +9 -5
- package/build-style/page-list/editor.css +9 -5
- package/build-style/post-comments/style-rtl.css +9 -4
- package/build-style/post-comments/style.css +9 -4
- package/build-style/post-featured-image/editor-rtl.css +0 -7
- package/build-style/post-featured-image/editor.css +0 -7
- package/build-style/post-featured-image/style-rtl.css +1 -1
- package/build-style/post-featured-image/style.css +1 -1
- package/build-style/post-template/style-rtl.css +4 -0
- package/build-style/post-template/style.css +4 -0
- package/build-style/post-title/style-rtl.css +3 -0
- package/build-style/post-title/style.css +3 -0
- package/build-style/pullquote/style-rtl.css +1 -0
- package/build-style/pullquote/style.css +1 -0
- package/build-style/query-pagination/editor-rtl.css +0 -4
- package/build-style/query-pagination/editor.css +0 -4
- package/build-style/social-links/editor-rtl.css +3 -0
- package/build-style/social-links/editor.css +3 -0
- package/build-style/social-links/style-rtl.css +1 -0
- package/build-style/social-links/style.css +1 -0
- package/build-style/spacer/editor-rtl.css +4 -0
- package/build-style/spacer/editor.css +4 -0
- package/build-style/style-rtl.css +141 -87
- package/build-style/style.css +143 -87
- package/build-style/table/style-rtl.css +1 -0
- package/build-style/table/style.css +1 -0
- package/build-style/tag-cloud/style-rtl.css +8 -0
- package/build-style/tag-cloud/style.css +8 -0
- package/build-style/theme-rtl.css +6 -4
- package/build-style/theme.css +6 -4
- package/package.json +30 -30
- package/src/archives/block.json +1 -0
- package/src/archives/index.php +5 -9
- package/src/audio/block.json +1 -0
- package/src/audio/edit.js +18 -2
- package/src/audio/editor.scss +14 -0
- package/src/audio/test/__snapshots__/edit.native.js.snap +22 -0
- package/src/audio/test/edit.native.js +24 -11
- package/src/block/block.json +1 -0
- package/src/block/index.php +7 -2
- package/src/block/test/edit.native.js +10 -12
- package/src/button/block.json +5 -1
- package/src/button/edit.native.js +1 -1
- package/src/buttons/block.json +2 -1
- package/src/buttons/edit.js +17 -0
- package/src/buttons/edit.native.js +17 -5
- package/src/buttons/test/__snapshots__/edit.native.js.snap +27 -0
- package/src/buttons/test/edit.native.js +75 -45
- package/src/calendar/block.json +1 -0
- package/src/calendar/index.php +35 -39
- package/src/categories/block.json +1 -0
- package/src/categories/index.php +1 -1
- package/src/code/block.json +6 -1
- package/src/code/theme.scss +6 -4
- package/src/column/block.json +1 -0
- package/src/columns/block.json +11 -0
- package/src/columns/editor.scss +0 -15
- package/src/columns/style.scss +15 -36
- package/src/comment-author-avatar/block.json +7 -2
- package/src/comment-author-avatar/edit.js +9 -2
- package/src/comment-author-avatar/index.php +25 -6
- package/src/comment-author-name/block.json +1 -0
- package/src/comment-content/block.json +1 -0
- package/src/comment-date/block.json +1 -0
- package/src/comment-date/index.php +2 -2
- package/src/comment-edit-link/block.json +1 -0
- package/src/comment-edit-link/index.js +1 -1
- package/src/comment-reply-link/block.json +1 -0
- package/src/comment-template/block.json +4 -2
- package/src/comment-template/edit.js +127 -42
- package/src/comment-template/index.php +46 -19
- package/src/comment-template/style.scss +17 -0
- package/src/comment-template/test/index.js +45 -0
- package/src/comment-template/util.js +56 -0
- package/src/comments-pagination/block.json +37 -0
- package/src/comments-pagination/comments-pagination-arrow-controls.js +44 -0
- package/src/comments-pagination/edit.js +83 -0
- package/src/comments-pagination/editor.scss +34 -0
- package/src/comments-pagination/index.js +20 -0
- package/src/comments-pagination/index.php +39 -0
- package/src/comments-pagination/save.js +8 -0
- package/src/comments-pagination/style.scss +38 -0
- package/src/comments-pagination-next/block.json +35 -0
- package/src/comments-pagination-next/edit.js +44 -0
- package/src/comments-pagination-next/index.js +18 -0
- package/src/comments-pagination-next/index.php +62 -0
- package/src/comments-pagination-numbers/block.json +15 -0
- package/src/comments-pagination-numbers/edit.js +22 -0
- package/src/comments-pagination-numbers/editor.scss +12 -0
- package/src/comments-pagination-numbers/index.js +18 -0
- package/src/comments-pagination-numbers/index.php +69 -0
- package/src/comments-pagination-previous/block.json +35 -0
- package/src/comments-pagination-previous/edit.js +44 -0
- package/src/comments-pagination-previous/index.js +18 -0
- package/src/comments-pagination-previous/index.php +52 -0
- package/src/comments-query-loop/block.json +15 -7
- package/src/comments-query-loop/edit/comments-inspector-controls.js +93 -0
- package/src/comments-query-loop/edit.js +22 -27
- package/src/comments-query-loop/editor.scss +3 -0
- package/src/common.scss +19 -0
- package/src/cover/block.json +1 -0
- package/src/cover/edit.js +1 -0
- package/src/cover/edit.native.js +35 -19
- package/src/cover/overlay-color-settings.native.js +10 -0
- package/src/cover/style.scss +4 -0
- package/src/cover/test/__snapshots__/edit.native.js.snap +33 -0
- package/src/cover/test/edit.native.js +280 -17
- package/src/editor.scss +3 -0
- package/src/embed/block.json +1 -0
- package/src/embed/edit.native.js +23 -18
- package/src/embed/editor.scss +0 -15
- package/src/embed/embed-controls.native.js +65 -0
- package/src/embed/embed-link-settings.native.js +100 -0
- package/src/embed/embed-loading.js +0 -2
- package/src/embed/embed-placeholder.native.js +8 -0
- package/src/embed/test/__snapshots__/index.native.js.snap +10 -0
- package/src/embed/test/index.native.js +236 -95
- package/src/file/block.json +1 -0
- package/src/file/edit.native.js +6 -2
- package/src/file/index.php +2 -2
- package/src/file/test/__snapshots__/edit.native.js.snap +18 -5
- package/src/file/test/edit.native.js +30 -12
- package/src/freeform/block.json +1 -0
- package/src/gallery/block.json +1 -0
- package/src/gallery/deprecated.js +4 -0
- package/src/gallery/edit.js +42 -11
- package/src/gallery/editor.scss +8 -22
- package/src/gallery/gallery.native.js +1 -1
- package/src/gallery/style.scss +4 -0
- package/src/gallery/test/use-get-new-images.js +93 -0
- package/src/group/block.json +19 -1
- package/src/group/theme.scss +4 -5
- package/src/heading/block.json +1 -0
- package/src/heading/edit.js +2 -1
- package/src/home-link/block.json +1 -0
- package/src/home-link/index.php +3 -3
- package/src/html/block.json +1 -0
- package/src/image/block.json +5 -1
- package/src/image/edit.js +44 -0
- package/src/image/edit.native.js +4 -4
- package/src/image/image.js +14 -3
- package/src/image/index.php +2 -2
- package/src/image/test/edit.native.js +27 -7
- package/src/index.js +10 -0
- package/src/latest-comments/block.json +1 -0
- package/src/latest-comments/index.php +5 -5
- package/src/latest-posts/block.json +1 -0
- package/src/latest-posts/edit.js +1 -1
- package/src/latest-posts/editor.scss +10 -0
- package/src/latest-posts/index.php +14 -12
- package/src/latest-posts/style.scss +0 -12
- package/src/list/block.json +1 -0
- package/src/list/test/edit.native.js +3 -3
- package/src/loginout/block.json +1 -0
- package/src/media-text/block.json +1 -0
- package/src/missing/block.json +1 -0
- package/src/missing/test/__snapshots__/edit.native.js.snap +5 -0
- package/src/missing/test/edit-integration.native.js +2 -2
- package/src/missing/test/edit.native.js +26 -30
- package/src/more/block.json +1 -0
- package/src/navigation/README.md +13 -0
- package/src/navigation/block.json +12 -10
- package/src/navigation/edit/index.js +71 -21
- package/src/navigation/edit/inner-blocks.js +3 -1
- package/src/navigation/edit/overlay-menu-icon.js +21 -0
- package/src/navigation/edit/placeholder/index.js +20 -9
- package/src/navigation/edit/responsive-wrapper.js +12 -13
- package/src/navigation/editor.scss +18 -3
- package/src/navigation/index.php +17 -10
- package/src/navigation/menu-items-to-blocks.js +2 -1
- package/src/navigation/style.scss +24 -7
- package/src/navigation/use-navigation-entities.js +3 -1
- package/src/navigation-area/block.json +3 -7
- package/src/navigation-area/edit.js +2 -1
- package/src/navigation-link/block.json +2 -3
- package/src/navigation-link/edit.js +5 -0
- package/src/navigation-link/index.php +3 -3
- package/src/navigation-submenu/block.json +2 -3
- package/src/navigation-submenu/edit.js +3 -1
- package/src/navigation-submenu/index.php +7 -7
- package/src/nextpage/block.json +1 -0
- package/src/page-list/block.json +4 -0
- package/src/page-list/edit.js +47 -9
- package/src/page-list/editor.scss +8 -5
- package/src/page-list/index.php +15 -10
- package/src/paragraph/block.json +2 -1
- package/src/paragraph/edit.js +12 -4
- package/src/paragraph/test/edit.native.js +4 -13
- package/src/pattern/block.json +1 -0
- package/src/post-author/block.json +2 -1
- package/src/post-author/index.php +1 -1
- package/src/post-author-name/block.json +43 -0
- package/src/post-author-name/edit.js +95 -0
- package/src/post-author-name/index.js +18 -0
- package/src/post-author-name/index.php +49 -0
- package/src/post-comment/block.json +1 -0
- package/src/post-comments/block.json +1 -0
- package/src/post-comments/style.scss +10 -4
- package/src/post-comments-count/block.json +1 -0
- package/src/post-comments-form/block.json +6 -1
- package/src/post-comments-link/block.json +1 -0
- package/src/post-comments-link/index.php +7 -7
- package/src/post-content/block.json +1 -0
- package/src/post-content/index.php +1 -1
- package/src/post-date/block.json +1 -0
- package/src/post-date/index.php +2 -2
- package/src/post-excerpt/block.json +1 -0
- package/src/post-excerpt/edit.js +1 -0
- package/src/post-excerpt/index.js +2 -0
- package/src/post-excerpt/index.php +1 -1
- package/src/post-excerpt/transforms.js +23 -0
- package/src/post-featured-image/block.json +4 -0
- package/src/post-featured-image/dimension-controls.js +103 -51
- package/src/post-featured-image/edit.js +61 -22
- package/src/post-featured-image/editor.scss +0 -8
- package/src/post-featured-image/index.php +3 -2
- package/src/post-featured-image/style.scss +1 -1
- package/src/post-navigation-link/block.json +1 -0
- package/src/post-navigation-link/index.php +4 -4
- package/src/post-template/block.json +2 -1
- package/src/post-template/edit.js +27 -7
- package/src/post-template/index.php +2 -2
- package/src/post-template/style.scss +5 -0
- package/src/post-terms/block.json +1 -0
- package/src/post-terms/index.php +1 -1
- package/src/post-title/block.json +1 -0
- package/src/post-title/index.php +1 -1
- package/src/post-title/style.scss +6 -2
- package/src/preformatted/block.json +1 -0
- package/src/preformatted/edit.native.js +4 -4
- package/src/preformatted/test/__snapshots__/edit.native.js.snap +53 -14
- package/src/preformatted/test/edit.native.js +11 -10
- package/src/pullquote/block.json +8 -1
- package/src/pullquote/style.scss +1 -0
- package/src/query/block.json +3 -3
- package/src/query/deprecated.js +80 -3
- package/src/query/edit/index.js +3 -3
- package/src/query/edit/inspector-controls/author-control.js +78 -0
- package/src/query/edit/inspector-controls/index.js +163 -0
- package/src/query/edit/inspector-controls/order-control.js +41 -0
- package/src/query/edit/inspector-controls/taxonomy-controls.js +118 -0
- package/src/query/test/utils.js +6 -4
- package/src/query/utils.js +45 -35
- package/src/query/variations.js +0 -4
- package/src/query-pagination/block.json +2 -1
- package/src/query-pagination/editor.scss +0 -4
- package/src/query-pagination-next/block.json +2 -1
- package/src/query-pagination-next/index.php +2 -1
- package/src/query-pagination-numbers/block.json +2 -1
- package/src/query-pagination-previous/block.json +2 -1
- package/src/query-pagination-previous/index.php +2 -1
- package/src/query-title/block.json +1 -0
- package/src/quote/block.json +1 -0
- package/src/rss/block.json +1 -0
- package/src/search/block.json +8 -1
- package/src/search/edit.js +2 -1
- package/src/search/edit.native.js +2 -5
- package/src/search/index.php +21 -11
- package/src/search/test/__snapshots__/edit.native.js.snap +7 -15
- package/src/search/test/edit.native.js +32 -24
- package/src/separator/block.json +1 -0
- package/src/shortcode/block.json +1 -0
- package/src/site-logo/block.json +1 -0
- package/src/site-logo/edit.js +1 -32
- package/src/site-logo/index.js +2 -0
- package/src/site-logo/index.php +1 -1
- package/src/site-logo/transforms.js +21 -0
- package/src/site-tagline/block.json +2 -1
- package/src/site-tagline/index.php +1 -1
- package/src/site-title/block.json +1 -0
- package/src/site-title/index.js +2 -0
- package/src/site-title/index.php +4 -4
- package/src/site-title/transforms.js +21 -0
- package/src/social-link/block.json +2 -1
- package/src/social-link/index.php +3 -3
- package/src/social-links/block.json +3 -8
- package/src/social-links/edit.js +29 -26
- package/src/social-links/editor.scss +7 -0
- package/src/social-links/style.scss +3 -0
- package/src/spacer/block.json +4 -3
- package/src/spacer/controls.js +108 -0
- package/src/spacer/controls.native.js +82 -0
- package/src/spacer/deprecated.js +41 -0
- package/src/spacer/edit.js +133 -132
- package/src/spacer/edit.native.js +68 -0
- package/src/spacer/editor.scss +6 -0
- package/src/spacer/index.js +2 -0
- package/src/spacer/save.js +5 -2
- package/src/style.scss +3 -2
- package/src/table/block.json +7 -1
- package/src/table/style.scss +1 -0
- package/src/table-of-contents/block.json +1 -0
- package/src/table-of-contents/index.php +3 -3
- package/src/tag-cloud/block.json +1 -0
- package/src/tag-cloud/index.php +9 -0
- package/src/tag-cloud/style.scss +9 -0
- package/src/template-part/block.json +1 -0
- package/src/template-part/index.php +6 -6
- package/src/term-description/block.json +1 -0
- package/src/text-columns/block.json +1 -0
- package/src/verse/block.json +1 -0
- package/src/verse/test/edit.native.js +7 -10
- package/src/video/block.json +1 -0
- package/build/comments-query-loop/toolbar.js +0 -58
- package/build/comments-query-loop/toolbar.js.map +0 -1
- package/build/embed/embed-bottom-sheet.native.js +0 -85
- package/build/embed/embed-bottom-sheet.native.js.map +0 -1
- package/build/query/edit/query-inspector-controls.js +0 -275
- package/build/query/edit/query-inspector-controls.js.map +0 -1
- package/build-module/comments-query-loop/toolbar.js +0 -48
- package/build-module/comments-query-loop/toolbar.js.map +0 -1
- package/build-module/embed/embed-bottom-sheet.native.js +0 -74
- package/build-module/embed/embed-bottom-sheet.native.js.map +0 -1
- package/build-module/query/edit/query-inspector-controls.js +0 -261
- package/build-module/query/edit/query-inspector-controls.js.map +0 -1
- package/src/comments-query-loop/toolbar.js +0 -57
- package/src/embed/embed-bottom-sheet.native.js +0 -78
- package/src/home-link/style.scss +0 -51
- package/src/query/edit/query-inspector-controls.js +0 -281
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/query/edit/inspector-controls/author-control.js"],"names":["__","FormTokenField","useSelect","store","coreStore","getEntitiesInfo","AUTHORS_QUERY","who","per_page","_fields","context","AuthorControl","value","onChange","authorsList","select","getUsers","authorsInfo","normalizedValue","toString","split","sanitizedValue","reduce","accumulator","authorId","author","mapById","push","id","name","getIdByValue","entitiesMappedByName","authorValue","onAuthorChange","newValue","ids","Array","from","mapByName","add","Set","join","names"],"mappings":";;AAAA;AACA;AACA;AACA,SAASA,EAAT,QAAmB,iBAAnB;AACA,SAASC,cAAT,QAA+B,uBAA/B;AACA,SAASC,SAAT,QAA0B,iBAA1B;AACA,SAASC,KAAK,IAAIC,SAAlB,QAAmC,sBAAnC;AAEA;AACA;AACA;;AACA,SAASC,eAAT,QAAgC,aAAhC;AAEA,MAAMC,aAAa,GAAG;AACrBC,EAAAA,GAAG,EAAE,SADgB;AAErBC,EAAAA,QAAQ,EAAE,CAAC,CAFU;AAGrBC,EAAAA,OAAO,EAAE,SAHY;AAIrBC,EAAAA,OAAO,EAAE;AAJY,CAAtB;;AAOA,SAASC,aAAT,OAA8C;AAAA,MAAtB;AAAEC,IAAAA,KAAF;AAASC,IAAAA;AAAT,GAAsB;AAC7C,QAAMC,WAAW,GAAGZ,SAAS,CAAIa,MAAF,IAAc;AAC5C,UAAM;AAAEC,MAAAA;AAAF,QAAeD,MAAM,CAAEX,SAAF,CAA3B;AACA,WAAOY,QAAQ,CAAEV,aAAF,CAAf;AACA,GAH4B,EAG1B,EAH0B,CAA7B;;AAKA,MAAK,CAAEQ,WAAP,EAAqB;AACpB,WAAO,IAAP;AACA;;AACD,QAAMG,WAAW,GAAGZ,eAAe,CAAES,WAAF,CAAnC;AACA;AACD;AACA;AACA;AACA;;AACC,QAAMI,eAAe,GAAG,CAAEN,KAAF,GAAU,EAAV,GAAeA,KAAK,CAACO,QAAN,GAAiBC,KAAjB,CAAwB,GAAxB,CAAvC,CAf6C,CAgB7C;AACA;;AACA,QAAMC,cAAc,GAAGH,eAAe,CAACI,MAAhB,CACtB,CAAEC,WAAF,EAAeC,QAAf,KAA6B;AAC5B,UAAMC,MAAM,GAAGR,WAAW,CAACS,OAAZ,CAAqBF,QAArB,CAAf;;AACA,QAAKC,MAAL,EAAc;AACbF,MAAAA,WAAW,CAACI,IAAZ,CAAkB;AACjBC,QAAAA,EAAE,EAAEJ,QADa;AAEjBZ,QAAAA,KAAK,EAAEa,MAAM,CAACI;AAFG,OAAlB;AAIA;;AACD,WAAON,WAAP;AACA,GAVqB,EAWtB,EAXsB,CAAvB;;AAcA,QAAMO,YAAY,GAAG,CAAEC,oBAAF,EAAwBC,WAAxB,KAAyC;AAAA;;AAC7D,UAAMJ,EAAE,GAAG,CAAAI,WAAW,SAAX,IAAAA,WAAW,WAAX,YAAAA,WAAW,CAAEJ,EAAb,+BAAmBG,oBAAoB,CAAEC,WAAF,CAAvC,0DAAmB,sBAAqCJ,EAAxD,CAAX;AACA,QAAKA,EAAL,EAAU,OAAOA,EAAP;AACV,GAHD;;AAIA,QAAMK,cAAc,GAAKC,QAAF,IAAgB;AACtC,UAAMC,GAAG,GAAGC,KAAK,CAACC,IAAN,CACXH,QAAQ,CAACZ,MAAT,CAAiB,CAAEC,WAAF,EAAeE,MAAf,KAA2B;AAC3C;AACA,YAAMG,EAAE,GAAGE,YAAY,CAAEb,WAAW,CAACqB,SAAd,EAAyBb,MAAzB,CAAvB;AACA,UAAKG,EAAL,EAAUL,WAAW,CAACgB,GAAZ,CAAiBX,EAAjB;AACV,aAAOL,WAAP;AACA,KALD,EAKG,IAAIiB,GAAJ,EALH,CADW,CAAZ;AAQA3B,IAAAA,QAAQ,CAAE;AAAEY,MAAAA,MAAM,EAAEU,GAAG,CAACM,IAAJ,CAAU,GAAV;AAAV,KAAF,CAAR;AACA,GAVD;;AAWA,SACC,cAAC,cAAD;AACC,IAAA,KAAK,EAAGzC,EAAE,CAAE,SAAF,CADX;AAEC,IAAA,KAAK,EAAGqB,cAFT;AAGC,IAAA,WAAW,EAAGJ,WAAW,CAACyB,KAH3B;AAIC,IAAA,QAAQ,EAAGT;AAJZ,IADD;AAQA;;AAED,eAAetB,aAAf","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { FormTokenField } from '@wordpress/components';\nimport { useSelect } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport { getEntitiesInfo } from '../../utils';\n\nconst AUTHORS_QUERY = {\n\twho: 'authors',\n\tper_page: -1,\n\t_fields: 'id,name',\n\tcontext: 'view',\n};\n\nfunction AuthorControl( { value, onChange } ) {\n\tconst authorsList = useSelect( ( select ) => {\n\t\tconst { getUsers } = select( coreStore );\n\t\treturn getUsers( AUTHORS_QUERY );\n\t}, [] );\n\n\tif ( ! authorsList ) {\n\t\treturn null;\n\t}\n\tconst authorsInfo = getEntitiesInfo( authorsList );\n\t/**\n\t * We need to normalize the value because the block operates on a\n\t * comma(`,`) separated string value and `FormTokenFiels` needs an\n\t * array.\n\t */\n\tconst normalizedValue = ! value ? [] : value.toString().split( ',' );\n\t// Returns only the existing authors ids. This prevents the component\n\t// from crashing in the editor, when non existing ids are provided.\n\tconst sanitizedValue = normalizedValue.reduce(\n\t\t( accumulator, authorId ) => {\n\t\t\tconst author = authorsInfo.mapById[ authorId ];\n\t\t\tif ( author ) {\n\t\t\t\taccumulator.push( {\n\t\t\t\t\tid: authorId,\n\t\t\t\t\tvalue: author.name,\n\t\t\t\t} );\n\t\t\t}\n\t\t\treturn accumulator;\n\t\t},\n\t\t[]\n\t);\n\n\tconst getIdByValue = ( entitiesMappedByName, authorValue ) => {\n\t\tconst id = authorValue?.id || entitiesMappedByName[ authorValue ]?.id;\n\t\tif ( id ) return id;\n\t};\n\tconst onAuthorChange = ( newValue ) => {\n\t\tconst ids = Array.from(\n\t\t\tnewValue.reduce( ( accumulator, author ) => {\n\t\t\t\t// Verify that new values point to existing entities.\n\t\t\t\tconst id = getIdByValue( authorsInfo.mapByName, author );\n\t\t\t\tif ( id ) accumulator.add( id );\n\t\t\t\treturn accumulator;\n\t\t\t}, new Set() )\n\t\t);\n\t\tonChange( { author: ids.join( ',' ) } );\n\t};\n\treturn (\n\t\t<FormTokenField\n\t\t\tlabel={ __( 'Authors' ) }\n\t\t\tvalue={ sanitizedValue }\n\t\t\tsuggestions={ authorsInfo.names }\n\t\t\tonChange={ onAuthorChange }\n\t\t/>\n\t);\n}\n\nexport default AuthorControl;\n"]}
|
|
@@ -0,0 +1,149 @@
|
|
|
1
|
+
import { createElement, Fragment } from "@wordpress/element";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* External dependencies
|
|
5
|
+
*/
|
|
6
|
+
import { debounce } from 'lodash';
|
|
7
|
+
/**
|
|
8
|
+
* WordPress dependencies
|
|
9
|
+
*/
|
|
10
|
+
|
|
11
|
+
import { PanelBody, TextControl, SelectControl, RangeControl, ToggleControl, Notice } from '@wordpress/components';
|
|
12
|
+
import { __ } from '@wordpress/i18n';
|
|
13
|
+
import { InspectorControls } from '@wordpress/block-editor';
|
|
14
|
+
import { useEffect, useState, useCallback } from '@wordpress/element';
|
|
15
|
+
/**
|
|
16
|
+
* Internal dependencies
|
|
17
|
+
*/
|
|
18
|
+
|
|
19
|
+
import OrderControl from './order-control';
|
|
20
|
+
import AuthorControl from './author-control';
|
|
21
|
+
import TaxonomyControls from './taxonomy-controls';
|
|
22
|
+
import { usePostTypes } from '../../utils';
|
|
23
|
+
const stickyOptions = [{
|
|
24
|
+
label: __('Include'),
|
|
25
|
+
value: ''
|
|
26
|
+
}, {
|
|
27
|
+
label: __('Exclude'),
|
|
28
|
+
value: 'exclude'
|
|
29
|
+
}, {
|
|
30
|
+
label: __('Only'),
|
|
31
|
+
value: 'only'
|
|
32
|
+
}];
|
|
33
|
+
export default function QueryInspectorControls(_ref) {
|
|
34
|
+
let {
|
|
35
|
+
attributes: {
|
|
36
|
+
query,
|
|
37
|
+
displayLayout
|
|
38
|
+
},
|
|
39
|
+
setQuery,
|
|
40
|
+
setDisplayLayout
|
|
41
|
+
} = _ref;
|
|
42
|
+
const {
|
|
43
|
+
order,
|
|
44
|
+
orderBy,
|
|
45
|
+
author: authorIds,
|
|
46
|
+
postType,
|
|
47
|
+
sticky,
|
|
48
|
+
inherit,
|
|
49
|
+
taxQuery
|
|
50
|
+
} = query;
|
|
51
|
+
const [showSticky, setShowSticky] = useState(postType === 'post');
|
|
52
|
+
const {
|
|
53
|
+
postTypesTaxonomiesMap,
|
|
54
|
+
postTypesSelectOptions
|
|
55
|
+
} = usePostTypes();
|
|
56
|
+
useEffect(() => {
|
|
57
|
+
setShowSticky(postType === 'post');
|
|
58
|
+
}, [postType]);
|
|
59
|
+
|
|
60
|
+
const onPostTypeChange = newValue => {
|
|
61
|
+
const updateQuery = {
|
|
62
|
+
postType: newValue
|
|
63
|
+
}; // We need to dynamically update the `taxQuery` property,
|
|
64
|
+
// by removing any not supported taxonomy from the query.
|
|
65
|
+
|
|
66
|
+
const supportedTaxonomies = postTypesTaxonomiesMap[newValue];
|
|
67
|
+
const updatedTaxQuery = Object.entries(taxQuery || {}).reduce((accumulator, _ref2) => {
|
|
68
|
+
let [taxonomySlug, terms] = _ref2;
|
|
69
|
+
|
|
70
|
+
if (supportedTaxonomies.includes(taxonomySlug)) {
|
|
71
|
+
accumulator[taxonomySlug] = terms;
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
return accumulator;
|
|
75
|
+
}, {});
|
|
76
|
+
updateQuery.taxQuery = !!Object.keys(updatedTaxQuery).length ? updatedTaxQuery : undefined;
|
|
77
|
+
|
|
78
|
+
if (newValue !== 'post') {
|
|
79
|
+
updateQuery.sticky = '';
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
setQuery(updateQuery);
|
|
83
|
+
};
|
|
84
|
+
|
|
85
|
+
const [querySearch, setQuerySearch] = useState(query.search);
|
|
86
|
+
const onChangeDebounced = useCallback(debounce(() => {
|
|
87
|
+
if (query.search !== querySearch) {
|
|
88
|
+
setQuery({
|
|
89
|
+
search: querySearch
|
|
90
|
+
});
|
|
91
|
+
}
|
|
92
|
+
}, 250), [querySearch, query.search]);
|
|
93
|
+
useEffect(() => {
|
|
94
|
+
onChangeDebounced();
|
|
95
|
+
return onChangeDebounced.cancel;
|
|
96
|
+
}, [querySearch, onChangeDebounced]);
|
|
97
|
+
return createElement(InspectorControls, null, createElement(PanelBody, {
|
|
98
|
+
title: __('Settings')
|
|
99
|
+
}, createElement(ToggleControl, {
|
|
100
|
+
label: __('Inherit query from template'),
|
|
101
|
+
help: __('Toggle to use the global query context that is set with the current template, such as an archive or search. Disable to customize the settings independently.'),
|
|
102
|
+
checked: !!inherit,
|
|
103
|
+
onChange: value => setQuery({
|
|
104
|
+
inherit: !!value
|
|
105
|
+
})
|
|
106
|
+
}), !inherit && createElement(SelectControl, {
|
|
107
|
+
options: postTypesSelectOptions,
|
|
108
|
+
value: postType,
|
|
109
|
+
label: __('Post type'),
|
|
110
|
+
onChange: onPostTypeChange,
|
|
111
|
+
help: __('WordPress contains different types of content and they are divided into collections called "Post types". By default there are a few different ones such as blog posts and pages, but plugins could add more.')
|
|
112
|
+
}), (displayLayout === null || displayLayout === void 0 ? void 0 : displayLayout.type) === 'flex' && createElement(Fragment, null, createElement(RangeControl, {
|
|
113
|
+
label: __('Columns'),
|
|
114
|
+
value: displayLayout.columns,
|
|
115
|
+
onChange: value => setDisplayLayout({
|
|
116
|
+
columns: value
|
|
117
|
+
}),
|
|
118
|
+
min: 2,
|
|
119
|
+
max: Math.max(6, displayLayout.columns)
|
|
120
|
+
}), displayLayout.columns > 6 && createElement(Notice, {
|
|
121
|
+
status: "warning",
|
|
122
|
+
isDismissible: false
|
|
123
|
+
}, __('This column count exceeds the recommended amount and may cause visual breakage.'))), !inherit && createElement(OrderControl, {
|
|
124
|
+
order,
|
|
125
|
+
orderBy,
|
|
126
|
+
onChange: setQuery
|
|
127
|
+
}), showSticky && createElement(SelectControl, {
|
|
128
|
+
label: __('Sticky posts'),
|
|
129
|
+
options: stickyOptions,
|
|
130
|
+
value: sticky,
|
|
131
|
+
onChange: value => setQuery({
|
|
132
|
+
sticky: value
|
|
133
|
+
}),
|
|
134
|
+
help: __('Blog posts can be "stickied", a feature that places them at the top of the front page of posts, keeping it there until new sticky posts are published.')
|
|
135
|
+
})), !inherit && createElement(PanelBody, {
|
|
136
|
+
title: __('Filters')
|
|
137
|
+
}, createElement(TaxonomyControls, {
|
|
138
|
+
onChange: setQuery,
|
|
139
|
+
query: query
|
|
140
|
+
}), createElement(AuthorControl, {
|
|
141
|
+
value: authorIds,
|
|
142
|
+
onChange: setQuery
|
|
143
|
+
}), createElement(TextControl, {
|
|
144
|
+
label: __('Keyword'),
|
|
145
|
+
value: querySearch,
|
|
146
|
+
onChange: setQuerySearch
|
|
147
|
+
})));
|
|
148
|
+
}
|
|
149
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/query/edit/inspector-controls/index.js"],"names":["debounce","PanelBody","TextControl","SelectControl","RangeControl","ToggleControl","Notice","__","InspectorControls","useEffect","useState","useCallback","OrderControl","AuthorControl","TaxonomyControls","usePostTypes","stickyOptions","label","value","QueryInspectorControls","attributes","query","displayLayout","setQuery","setDisplayLayout","order","orderBy","author","authorIds","postType","sticky","inherit","taxQuery","showSticky","setShowSticky","postTypesTaxonomiesMap","postTypesSelectOptions","onPostTypeChange","newValue","updateQuery","supportedTaxonomies","updatedTaxQuery","Object","entries","reduce","accumulator","taxonomySlug","terms","includes","keys","length","undefined","querySearch","setQuerySearch","search","onChangeDebounced","cancel","type","columns","Math","max"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { debounce } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tPanelBody,\n\tTextControl,\n\tSelectControl,\n\tRangeControl,\n\tToggleControl,\n\tNotice,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { InspectorControls } from '@wordpress/block-editor';\nimport { useEffect, useState, useCallback } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport OrderControl from './order-control';\nimport AuthorControl from './author-control';\nimport TaxonomyControls from './taxonomy-controls';\nimport { usePostTypes } from '../../utils';\n\nconst stickyOptions = [\n\t{ label: __( 'Include' ), value: '' },\n\t{ label: __( 'Exclude' ), value: 'exclude' },\n\t{ label: __( 'Only' ), value: 'only' },\n];\n\nexport default function QueryInspectorControls( {\n\tattributes: { query, displayLayout },\n\tsetQuery,\n\tsetDisplayLayout,\n} ) {\n\tconst {\n\t\torder,\n\t\torderBy,\n\t\tauthor: authorIds,\n\t\tpostType,\n\t\tsticky,\n\t\tinherit,\n\t\ttaxQuery,\n\t} = query;\n\tconst [ showSticky, setShowSticky ] = useState( postType === 'post' );\n\tconst { postTypesTaxonomiesMap, postTypesSelectOptions } = usePostTypes();\n\tuseEffect( () => {\n\t\tsetShowSticky( postType === 'post' );\n\t}, [ postType ] );\n\tconst onPostTypeChange = ( newValue ) => {\n\t\tconst updateQuery = { postType: newValue };\n\t\t// We need to dynamically update the `taxQuery` property,\n\t\t// by removing any not supported taxonomy from the query.\n\t\tconst supportedTaxonomies = postTypesTaxonomiesMap[ newValue ];\n\t\tconst updatedTaxQuery = Object.entries( taxQuery || {} ).reduce(\n\t\t\t( accumulator, [ taxonomySlug, terms ] ) => {\n\t\t\t\tif ( supportedTaxonomies.includes( taxonomySlug ) ) {\n\t\t\t\t\taccumulator[ taxonomySlug ] = terms;\n\t\t\t\t}\n\t\t\t\treturn accumulator;\n\t\t\t},\n\t\t\t{}\n\t\t);\n\t\tupdateQuery.taxQuery = !! Object.keys( updatedTaxQuery ).length\n\t\t\t? updatedTaxQuery\n\t\t\t: undefined;\n\n\t\tif ( newValue !== 'post' ) {\n\t\t\tupdateQuery.sticky = '';\n\t\t}\n\t\tsetQuery( updateQuery );\n\t};\n\tconst [ querySearch, setQuerySearch ] = useState( query.search );\n\tconst onChangeDebounced = useCallback(\n\t\tdebounce( () => {\n\t\t\tif ( query.search !== querySearch ) {\n\t\t\t\tsetQuery( { search: querySearch } );\n\t\t\t}\n\t\t}, 250 ),\n\t\t[ querySearch, query.search ]\n\t);\n\tuseEffect( () => {\n\t\tonChangeDebounced();\n\t\treturn onChangeDebounced.cancel;\n\t}, [ querySearch, onChangeDebounced ] );\n\treturn (\n\t\t<InspectorControls>\n\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t<ToggleControl\n\t\t\t\t\tlabel={ __( 'Inherit query from template' ) }\n\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t'Toggle to use the global query context that is set with the current template, such as an archive or search. Disable to customize the settings independently.'\n\t\t\t\t\t) }\n\t\t\t\t\tchecked={ !! inherit }\n\t\t\t\t\tonChange={ ( value ) => setQuery( { inherit: !! value } ) }\n\t\t\t\t/>\n\t\t\t\t{ ! inherit && (\n\t\t\t\t\t<SelectControl\n\t\t\t\t\t\toptions={ postTypesSelectOptions }\n\t\t\t\t\t\tvalue={ postType }\n\t\t\t\t\t\tlabel={ __( 'Post type' ) }\n\t\t\t\t\t\tonChange={ onPostTypeChange }\n\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t'WordPress contains different types of content and they are divided into collections called \"Post types\". By default there are a few different ones such as blog posts and pages, but plugins could add more.'\n\t\t\t\t\t\t) }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t{ displayLayout?.type === 'flex' && (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<RangeControl\n\t\t\t\t\t\t\tlabel={ __( 'Columns' ) }\n\t\t\t\t\t\t\tvalue={ displayLayout.columns }\n\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\tsetDisplayLayout( { columns: value } )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tmin={ 2 }\n\t\t\t\t\t\t\tmax={ Math.max( 6, displayLayout.columns ) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t{ displayLayout.columns > 6 && (\n\t\t\t\t\t\t\t<Notice status=\"warning\" isDismissible={ false }>\n\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t'This column count exceeds the recommended amount and may cause visual breakage.'\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t</Notice>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</>\n\t\t\t\t) }\n\t\t\t\t{ ! inherit && (\n\t\t\t\t\t<OrderControl\n\t\t\t\t\t\t{ ...{ order, orderBy } }\n\t\t\t\t\t\tonChange={ setQuery }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t{ showSticky && (\n\t\t\t\t\t<SelectControl\n\t\t\t\t\t\tlabel={ __( 'Sticky posts' ) }\n\t\t\t\t\t\toptions={ stickyOptions }\n\t\t\t\t\t\tvalue={ sticky }\n\t\t\t\t\t\tonChange={ ( value ) => setQuery( { sticky: value } ) }\n\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t'Blog posts can be \"stickied\", a feature that places them at the top of the front page of posts, keeping it there until new sticky posts are published.'\n\t\t\t\t\t\t) }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</PanelBody>\n\t\t\t{ ! inherit && (\n\t\t\t\t<PanelBody title={ __( 'Filters' ) }>\n\t\t\t\t\t<TaxonomyControls onChange={ setQuery } query={ query } />\n\t\t\t\t\t<AuthorControl value={ authorIds } onChange={ setQuery } />\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\tlabel={ __( 'Keyword' ) }\n\t\t\t\t\t\tvalue={ querySearch }\n\t\t\t\t\t\tonChange={ setQuerySearch }\n\t\t\t\t\t/>\n\t\t\t\t</PanelBody>\n\t\t\t) }\n\t\t</InspectorControls>\n\t);\n}\n"]}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { createElement } from "@wordpress/element";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* WordPress dependencies
|
|
5
|
+
*/
|
|
6
|
+
import { SelectControl } from '@wordpress/components';
|
|
7
|
+
import { __ } from '@wordpress/i18n';
|
|
8
|
+
const orderOptions = [{
|
|
9
|
+
label: __('Newest to oldest'),
|
|
10
|
+
value: 'date/desc'
|
|
11
|
+
}, {
|
|
12
|
+
label: __('Oldest to newest'),
|
|
13
|
+
value: 'date/asc'
|
|
14
|
+
}, {
|
|
15
|
+
/* translators: label for ordering posts by title in ascending order */
|
|
16
|
+
label: __('A → Z'),
|
|
17
|
+
value: 'title/asc'
|
|
18
|
+
}, {
|
|
19
|
+
/* translators: label for ordering posts by title in descending order */
|
|
20
|
+
label: __('Z → A'),
|
|
21
|
+
value: 'title/desc'
|
|
22
|
+
}];
|
|
23
|
+
|
|
24
|
+
function OrderControl(_ref) {
|
|
25
|
+
let {
|
|
26
|
+
order,
|
|
27
|
+
orderBy,
|
|
28
|
+
onChange
|
|
29
|
+
} = _ref;
|
|
30
|
+
return createElement(SelectControl, {
|
|
31
|
+
label: __('Order by'),
|
|
32
|
+
value: `${orderBy}/${order}`,
|
|
33
|
+
options: orderOptions,
|
|
34
|
+
onChange: value => {
|
|
35
|
+
const [newOrderBy, newOrder] = value.split('/');
|
|
36
|
+
onChange({
|
|
37
|
+
order: newOrder,
|
|
38
|
+
orderBy: newOrderBy
|
|
39
|
+
});
|
|
40
|
+
}
|
|
41
|
+
});
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
export default OrderControl;
|
|
45
|
+
//# sourceMappingURL=order-control.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/query/edit/inspector-controls/order-control.js"],"names":["SelectControl","__","orderOptions","label","value","OrderControl","order","orderBy","onChange","newOrderBy","newOrder","split"],"mappings":";;AAAA;AACA;AACA;AACA,SAASA,aAAT,QAA8B,uBAA9B;AACA,SAASC,EAAT,QAAmB,iBAAnB;AAEA,MAAMC,YAAY,GAAG,CACpB;AACCC,EAAAA,KAAK,EAAEF,EAAE,CAAE,kBAAF,CADV;AAECG,EAAAA,KAAK,EAAE;AAFR,CADoB,EAKpB;AACCD,EAAAA,KAAK,EAAEF,EAAE,CAAE,kBAAF,CADV;AAECG,EAAAA,KAAK,EAAE;AAFR,CALoB,EASpB;AACC;AACAD,EAAAA,KAAK,EAAEF,EAAE,CAAE,OAAF,CAFV;AAGCG,EAAAA,KAAK,EAAE;AAHR,CAToB,EAcpB;AACC;AACAD,EAAAA,KAAK,EAAEF,EAAE,CAAE,OAAF,CAFV;AAGCG,EAAAA,KAAK,EAAE;AAHR,CAdoB,CAArB;;AAoBA,SAASC,YAAT,OAAsD;AAAA,MAA/B;AAAEC,IAAAA,KAAF;AAASC,IAAAA,OAAT;AAAkBC,IAAAA;AAAlB,GAA+B;AACrD,SACC,cAAC,aAAD;AACC,IAAA,KAAK,EAAGP,EAAE,CAAE,UAAF,CADX;AAEC,IAAA,KAAK,EAAI,GAAGM,OAAS,IAAID,KAAO,EAFjC;AAGC,IAAA,OAAO,EAAGJ,YAHX;AAIC,IAAA,QAAQ,EAAKE,KAAF,IAAa;AACvB,YAAM,CAAEK,UAAF,EAAcC,QAAd,IAA2BN,KAAK,CAACO,KAAN,CAAa,GAAb,CAAjC;AACAH,MAAAA,QAAQ,CAAE;AAAEF,QAAAA,KAAK,EAAEI,QAAT;AAAmBH,QAAAA,OAAO,EAAEE;AAA5B,OAAF,CAAR;AACA;AAPF,IADD;AAWA;;AAED,eAAeJ,YAAf","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { SelectControl } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\n\nconst orderOptions = [\n\t{\n\t\tlabel: __( 'Newest to oldest' ),\n\t\tvalue: 'date/desc',\n\t},\n\t{\n\t\tlabel: __( 'Oldest to newest' ),\n\t\tvalue: 'date/asc',\n\t},\n\t{\n\t\t/* translators: label for ordering posts by title in ascending order */\n\t\tlabel: __( 'A → Z' ),\n\t\tvalue: 'title/asc',\n\t},\n\t{\n\t\t/* translators: label for ordering posts by title in descending order */\n\t\tlabel: __( 'Z → A' ),\n\t\tvalue: 'title/desc',\n\t},\n];\nfunction OrderControl( { order, orderBy, onChange } ) {\n\treturn (\n\t\t<SelectControl\n\t\t\tlabel={ __( 'Order by' ) }\n\t\t\tvalue={ `${ orderBy }/${ order }` }\n\t\t\toptions={ orderOptions }\n\t\t\tonChange={ ( value ) => {\n\t\t\t\tconst [ newOrderBy, newOrder ] = value.split( '/' );\n\t\t\t\tonChange( { order: newOrder, orderBy: newOrderBy } );\n\t\t\t} }\n\t\t/>\n\t);\n}\n\nexport default OrderControl;\n"]}
|
|
@@ -0,0 +1,145 @@
|
|
|
1
|
+
import { createElement, Fragment } from "@wordpress/element";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* WordPress dependencies
|
|
5
|
+
*/
|
|
6
|
+
import { FormTokenField } from '@wordpress/components';
|
|
7
|
+
import { useSelect } from '@wordpress/data';
|
|
8
|
+
import { store as coreStore } from '@wordpress/core-data';
|
|
9
|
+
/**
|
|
10
|
+
* Internal dependencies
|
|
11
|
+
*/
|
|
12
|
+
|
|
13
|
+
import { getEntitiesInfo, useTaxonomies } from '../../utils';
|
|
14
|
+
import { MAX_FETCHED_TERMS } from '../../constants'; // Helper function to get the term id based on user input in terms `FormTokenField`.
|
|
15
|
+
|
|
16
|
+
const getTermIdByTermValue = (termsMappedByName, termValue) => {
|
|
17
|
+
var _termsMappedByName$te;
|
|
18
|
+
|
|
19
|
+
// First we check for exact match by `term.id` or case sensitive `term.name` match.
|
|
20
|
+
const termId = (termValue === null || termValue === void 0 ? void 0 : termValue.id) || ((_termsMappedByName$te = termsMappedByName[termValue]) === null || _termsMappedByName$te === void 0 ? void 0 : _termsMappedByName$te.id);
|
|
21
|
+
if (termId) return termId;
|
|
22
|
+
/**
|
|
23
|
+
* Here we make an extra check for entered terms in a non case sensitive way,
|
|
24
|
+
* to match user expectations, due to `FormTokenField` behaviour that shows
|
|
25
|
+
* suggestions which are case insensitive.
|
|
26
|
+
*
|
|
27
|
+
* Although WP tries to discourage users to add terms with the same name (case insensitive),
|
|
28
|
+
* it's still possible if you manually change the name, as long as the terms have different slugs.
|
|
29
|
+
* In this edge case we always apply the first match from the terms list.
|
|
30
|
+
*/
|
|
31
|
+
|
|
32
|
+
const termValueLower = termValue.toLocaleLowerCase();
|
|
33
|
+
|
|
34
|
+
for (const term in termsMappedByName) {
|
|
35
|
+
if (term.toLocaleLowerCase() === termValueLower) {
|
|
36
|
+
return termsMappedByName[term].id;
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
};
|
|
40
|
+
|
|
41
|
+
function TaxonomyControls(_ref) {
|
|
42
|
+
let {
|
|
43
|
+
onChange,
|
|
44
|
+
query
|
|
45
|
+
} = _ref;
|
|
46
|
+
const taxonomies = useTaxonomies(query.postType);
|
|
47
|
+
const taxonomiesInfo = useSelect(select => {
|
|
48
|
+
const {
|
|
49
|
+
getEntityRecords
|
|
50
|
+
} = select(coreStore);
|
|
51
|
+
const termsQuery = {
|
|
52
|
+
per_page: MAX_FETCHED_TERMS
|
|
53
|
+
};
|
|
54
|
+
|
|
55
|
+
const _taxonomiesInfo = taxonomies === null || taxonomies === void 0 ? void 0 : taxonomies.map(_ref2 => {
|
|
56
|
+
let {
|
|
57
|
+
slug,
|
|
58
|
+
name
|
|
59
|
+
} = _ref2;
|
|
60
|
+
|
|
61
|
+
const _terms = getEntityRecords('taxonomy', slug, termsQuery);
|
|
62
|
+
|
|
63
|
+
return {
|
|
64
|
+
slug,
|
|
65
|
+
name,
|
|
66
|
+
terms: getEntitiesInfo(_terms)
|
|
67
|
+
};
|
|
68
|
+
});
|
|
69
|
+
|
|
70
|
+
return _taxonomiesInfo;
|
|
71
|
+
}, [taxonomies]);
|
|
72
|
+
|
|
73
|
+
const onTermsChange = taxonomySlug => newTermValues => {
|
|
74
|
+
const taxonomyInfo = taxonomiesInfo.find(_ref3 => {
|
|
75
|
+
let {
|
|
76
|
+
slug
|
|
77
|
+
} = _ref3;
|
|
78
|
+
return slug === taxonomySlug;
|
|
79
|
+
});
|
|
80
|
+
if (!taxonomyInfo) return;
|
|
81
|
+
const termIds = Array.from(newTermValues.reduce((accumulator, termValue) => {
|
|
82
|
+
const termId = getTermIdByTermValue(taxonomyInfo.terms.mapByName, termValue);
|
|
83
|
+
if (termId) accumulator.add(termId);
|
|
84
|
+
return accumulator;
|
|
85
|
+
}, new Set()));
|
|
86
|
+
const newTaxQuery = { ...query.taxQuery,
|
|
87
|
+
[taxonomySlug]: termIds
|
|
88
|
+
};
|
|
89
|
+
onChange({
|
|
90
|
+
taxQuery: newTaxQuery
|
|
91
|
+
});
|
|
92
|
+
}; // Returns only the existing term ids in proper format to be
|
|
93
|
+
// used in `FormTokenField`. This prevents the component from
|
|
94
|
+
// crashing in the editor, when non existing term ids were provided.
|
|
95
|
+
|
|
96
|
+
|
|
97
|
+
const getExistingTaxQueryValue = taxonomySlug => {
|
|
98
|
+
var _query$taxQuery;
|
|
99
|
+
|
|
100
|
+
const taxonomyInfo = taxonomiesInfo.find(_ref4 => {
|
|
101
|
+
let {
|
|
102
|
+
slug
|
|
103
|
+
} = _ref4;
|
|
104
|
+
return slug === taxonomySlug;
|
|
105
|
+
});
|
|
106
|
+
if (!taxonomyInfo) return [];
|
|
107
|
+
return (((_query$taxQuery = query.taxQuery) === null || _query$taxQuery === void 0 ? void 0 : _query$taxQuery[taxonomySlug]) || []).reduce((accumulator, termId) => {
|
|
108
|
+
const term = taxonomyInfo.terms.mapById[termId];
|
|
109
|
+
|
|
110
|
+
if (term) {
|
|
111
|
+
accumulator.push({
|
|
112
|
+
id: termId,
|
|
113
|
+
value: term.name
|
|
114
|
+
});
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
return accumulator;
|
|
118
|
+
}, []);
|
|
119
|
+
};
|
|
120
|
+
|
|
121
|
+
return createElement(Fragment, null, !!(taxonomiesInfo !== null && taxonomiesInfo !== void 0 && taxonomiesInfo.length) && taxonomiesInfo.map(_ref5 => {
|
|
122
|
+
var _terms$names;
|
|
123
|
+
|
|
124
|
+
let {
|
|
125
|
+
slug,
|
|
126
|
+
name,
|
|
127
|
+
terms
|
|
128
|
+
} = _ref5;
|
|
129
|
+
|
|
130
|
+
if (!(terms !== null && terms !== void 0 && (_terms$names = terms.names) !== null && _terms$names !== void 0 && _terms$names.length)) {
|
|
131
|
+
return null;
|
|
132
|
+
}
|
|
133
|
+
|
|
134
|
+
return createElement(FormTokenField, {
|
|
135
|
+
key: slug,
|
|
136
|
+
label: name,
|
|
137
|
+
value: getExistingTaxQueryValue(slug),
|
|
138
|
+
suggestions: terms.names,
|
|
139
|
+
onChange: onTermsChange(slug)
|
|
140
|
+
});
|
|
141
|
+
}));
|
|
142
|
+
}
|
|
143
|
+
|
|
144
|
+
export default TaxonomyControls;
|
|
145
|
+
//# sourceMappingURL=taxonomy-controls.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/query/edit/inspector-controls/taxonomy-controls.js"],"names":["FormTokenField","useSelect","store","coreStore","getEntitiesInfo","useTaxonomies","MAX_FETCHED_TERMS","getTermIdByTermValue","termsMappedByName","termValue","termId","id","termValueLower","toLocaleLowerCase","term","TaxonomyControls","onChange","query","taxonomies","postType","taxonomiesInfo","select","getEntityRecords","termsQuery","per_page","_taxonomiesInfo","map","slug","name","_terms","terms","onTermsChange","taxonomySlug","newTermValues","taxonomyInfo","find","termIds","Array","from","reduce","accumulator","mapByName","add","Set","newTaxQuery","taxQuery","getExistingTaxQueryValue","mapById","push","value","length","names"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { FormTokenField } from '@wordpress/components';\nimport { useSelect } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport { getEntitiesInfo, useTaxonomies } from '../../utils';\nimport { MAX_FETCHED_TERMS } from '../../constants';\n\n// Helper function to get the term id based on user input in terms `FormTokenField`.\nconst getTermIdByTermValue = ( termsMappedByName, termValue ) => {\n\t// First we check for exact match by `term.id` or case sensitive `term.name` match.\n\tconst termId = termValue?.id || termsMappedByName[ termValue ]?.id;\n\tif ( termId ) return termId;\n\t/**\n\t * Here we make an extra check for entered terms in a non case sensitive way,\n\t * to match user expectations, due to `FormTokenField` behaviour that shows\n\t * suggestions which are case insensitive.\n\t *\n\t * Although WP tries to discourage users to add terms with the same name (case insensitive),\n\t * it's still possible if you manually change the name, as long as the terms have different slugs.\n\t * In this edge case we always apply the first match from the terms list.\n\t */\n\tconst termValueLower = termValue.toLocaleLowerCase();\n\tfor ( const term in termsMappedByName ) {\n\t\tif ( term.toLocaleLowerCase() === termValueLower ) {\n\t\t\treturn termsMappedByName[ term ].id;\n\t\t}\n\t}\n};\n\nfunction TaxonomyControls( { onChange, query } ) {\n\tconst taxonomies = useTaxonomies( query.postType );\n\tconst taxonomiesInfo = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getEntityRecords } = select( coreStore );\n\t\t\tconst termsQuery = { per_page: MAX_FETCHED_TERMS };\n\t\t\tconst _taxonomiesInfo = taxonomies?.map( ( { slug, name } ) => {\n\t\t\t\tconst _terms = getEntityRecords( 'taxonomy', slug, termsQuery );\n\t\t\t\treturn {\n\t\t\t\t\tslug,\n\t\t\t\t\tname,\n\t\t\t\t\tterms: getEntitiesInfo( _terms ),\n\t\t\t\t};\n\t\t\t} );\n\t\t\treturn _taxonomiesInfo;\n\t\t},\n\t\t[ taxonomies ]\n\t);\n\tconst onTermsChange = ( taxonomySlug ) => ( newTermValues ) => {\n\t\tconst taxonomyInfo = taxonomiesInfo.find(\n\t\t\t( { slug } ) => slug === taxonomySlug\n\t\t);\n\t\tif ( ! taxonomyInfo ) return;\n\t\tconst termIds = Array.from(\n\t\t\tnewTermValues.reduce( ( accumulator, termValue ) => {\n\t\t\t\tconst termId = getTermIdByTermValue(\n\t\t\t\t\ttaxonomyInfo.terms.mapByName,\n\t\t\t\t\ttermValue\n\t\t\t\t);\n\t\t\t\tif ( termId ) accumulator.add( termId );\n\t\t\t\treturn accumulator;\n\t\t\t}, new Set() )\n\t\t);\n\t\tconst newTaxQuery = {\n\t\t\t...query.taxQuery,\n\t\t\t[ taxonomySlug ]: termIds,\n\t\t};\n\t\tonChange( { taxQuery: newTaxQuery } );\n\t};\n\t// Returns only the existing term ids in proper format to be\n\t// used in `FormTokenField`. This prevents the component from\n\t// crashing in the editor, when non existing term ids were provided.\n\tconst getExistingTaxQueryValue = ( taxonomySlug ) => {\n\t\tconst taxonomyInfo = taxonomiesInfo.find(\n\t\t\t( { slug } ) => slug === taxonomySlug\n\t\t);\n\t\tif ( ! taxonomyInfo ) return [];\n\t\treturn ( query.taxQuery?.[ taxonomySlug ] || [] ).reduce(\n\t\t\t( accumulator, termId ) => {\n\t\t\t\tconst term = taxonomyInfo.terms.mapById[ termId ];\n\t\t\t\tif ( term ) {\n\t\t\t\t\taccumulator.push( {\n\t\t\t\t\t\tid: termId,\n\t\t\t\t\t\tvalue: term.name,\n\t\t\t\t\t} );\n\t\t\t\t}\n\t\t\t\treturn accumulator;\n\t\t\t},\n\t\t\t[]\n\t\t);\n\t};\n\treturn (\n\t\t<>\n\t\t\t{ !! taxonomiesInfo?.length &&\n\t\t\t\ttaxonomiesInfo.map( ( { slug, name, terms } ) => {\n\t\t\t\t\tif ( ! terms?.names?.length ) {\n\t\t\t\t\t\treturn null;\n\t\t\t\t\t}\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<FormTokenField\n\t\t\t\t\t\t\tkey={ slug }\n\t\t\t\t\t\t\tlabel={ name }\n\t\t\t\t\t\t\tvalue={ getExistingTaxQueryValue( slug ) }\n\t\t\t\t\t\t\tsuggestions={ terms.names }\n\t\t\t\t\t\t\tonChange={ onTermsChange( slug ) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t);\n\t\t\t\t} ) }\n\t\t</>\n\t);\n}\n\nexport default TaxonomyControls;\n"]}
|
|
@@ -8,6 +8,7 @@ import { addFilter } from '@wordpress/hooks';
|
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
10
|
const metadata = {
|
|
11
|
+
$schema: "https://schemas.wp.org/trunk/block.json",
|
|
11
12
|
apiVersion: 2,
|
|
12
13
|
name: "core/query",
|
|
13
14
|
title: "Query Loop",
|
|
@@ -25,15 +26,14 @@ const metadata = {
|
|
|
25
26
|
pages: 0,
|
|
26
27
|
offset: 0,
|
|
27
28
|
postType: "post",
|
|
28
|
-
categoryIds: [],
|
|
29
|
-
tagIds: [],
|
|
30
29
|
order: "desc",
|
|
31
30
|
orderBy: "date",
|
|
32
31
|
author: "",
|
|
33
32
|
search: "",
|
|
34
33
|
exclude: [],
|
|
35
34
|
sticky: "",
|
|
36
|
-
inherit: true
|
|
35
|
+
inherit: true,
|
|
36
|
+
taxQuery: null
|
|
37
37
|
}
|
|
38
38
|
},
|
|
39
39
|
tagName: {
|
|
@@ -5,50 +5,41 @@ import { useSelect } from '@wordpress/data';
|
|
|
5
5
|
import { useMemo } from '@wordpress/element';
|
|
6
6
|
import { store as coreStore } from '@wordpress/core-data';
|
|
7
7
|
/**
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
*
|
|
11
|
-
*
|
|
12
|
-
* @typedef {Object} WPTerm
|
|
13
|
-
* @property {number} id Unique identifier for the term.
|
|
14
|
-
* @property {number} count Number of published posts for the term.
|
|
15
|
-
* @property {string} description HTML description of the term.
|
|
16
|
-
* @property {string} link URL of the term.
|
|
17
|
-
* @property {string} name HTML title for the term.
|
|
18
|
-
* @property {string} slug An alphanumeric identifier for the term unique to its type.
|
|
19
|
-
* @property {string} taxonomy Type attribution for the term.
|
|
20
|
-
* @property {Object} meta Meta fields
|
|
21
|
-
* @property {number} [parent] The parent term ID.
|
|
8
|
+
* @typedef IHasNameAndId
|
|
9
|
+
* @property {string|number} id The entity's id.
|
|
10
|
+
* @property {string} name The entity's name.
|
|
22
11
|
*/
|
|
23
12
|
|
|
24
13
|
/**
|
|
25
14
|
* The object used in Query block that contains info and helper mappings
|
|
26
|
-
* from an array of
|
|
15
|
+
* from an array of IHasNameAndId objects.
|
|
27
16
|
*
|
|
28
|
-
* @typedef {Object}
|
|
29
|
-
* @property {
|
|
30
|
-
* @property {Object<string,
|
|
31
|
-
* @property {Object<string,
|
|
32
|
-
* @property {string[]}
|
|
17
|
+
* @typedef {Object} QueryEntitiesInfo
|
|
18
|
+
* @property {IHasNameAndId[]} entities The array of entities.
|
|
19
|
+
* @property {Object<string, IHasNameAndId>} mapById Object mapping with the id as key and the entity as value.
|
|
20
|
+
* @property {Object<string, IHasNameAndId>} mapByName Object mapping with the name as key and the entity as value.
|
|
21
|
+
* @property {string[]} names Array with the entities' names.
|
|
33
22
|
*/
|
|
34
23
|
|
|
35
24
|
/**
|
|
36
|
-
* Returns a helper object with mapping from
|
|
25
|
+
* Returns a helper object with mapping from Objects that implement
|
|
26
|
+
* the `IHasNameAndId` interface. The returned object is used for
|
|
27
|
+
* integration with `FormTokenField` component.
|
|
37
28
|
*
|
|
38
|
-
* @param {
|
|
39
|
-
* @return {
|
|
29
|
+
* @param {IHasNameAndId[]} entities The entities to extract of helper object.
|
|
30
|
+
* @return {QueryEntitiesInfo} The object with the entities information.
|
|
40
31
|
*/
|
|
41
32
|
|
|
42
|
-
export const
|
|
43
|
-
const mapping =
|
|
33
|
+
export const getEntitiesInfo = entities => {
|
|
34
|
+
const mapping = entities === null || entities === void 0 ? void 0 : entities.reduce((accumulator, entity) => {
|
|
44
35
|
const {
|
|
45
36
|
mapById,
|
|
46
37
|
mapByName,
|
|
47
38
|
names
|
|
48
39
|
} = accumulator;
|
|
49
|
-
mapById[
|
|
50
|
-
mapByName[
|
|
51
|
-
names.push(
|
|
40
|
+
mapById[entity.id] = entity;
|
|
41
|
+
mapByName[entity.name] = entity;
|
|
42
|
+
names.push(entity.name);
|
|
52
43
|
return accumulator;
|
|
53
44
|
}, {
|
|
54
45
|
mapById: {},
|
|
@@ -56,7 +47,7 @@ export const getTermsInfo = terms => {
|
|
|
56
47
|
names: []
|
|
57
48
|
});
|
|
58
49
|
return {
|
|
59
|
-
|
|
50
|
+
entities,
|
|
60
51
|
...mapping
|
|
61
52
|
};
|
|
62
53
|
};
|
|
@@ -69,9 +60,7 @@ export const getTermsInfo = terms => {
|
|
|
69
60
|
*/
|
|
70
61
|
|
|
71
62
|
export const usePostTypes = () => {
|
|
72
|
-
const {
|
|
73
|
-
postTypes
|
|
74
|
-
} = useSelect(select => {
|
|
63
|
+
const postTypes = useSelect(select => {
|
|
75
64
|
var _getPostTypes;
|
|
76
65
|
|
|
77
66
|
const {
|
|
@@ -87,9 +76,7 @@ export const usePostTypes = () => {
|
|
|
87
76
|
} = _ref;
|
|
88
77
|
return viewable && !excludedPostTypes.includes(slug);
|
|
89
78
|
});
|
|
90
|
-
return
|
|
91
|
-
postTypes: filteredPostTypes
|
|
92
|
-
};
|
|
79
|
+
return filteredPostTypes;
|
|
93
80
|
}, []);
|
|
94
81
|
const postTypesTaxonomiesMap = useMemo(() => {
|
|
95
82
|
if (!(postTypes !== null && postTypes !== void 0 && postTypes.length)) return;
|
|
@@ -113,6 +100,27 @@ export const usePostTypes = () => {
|
|
|
113
100
|
postTypesSelectOptions
|
|
114
101
|
};
|
|
115
102
|
};
|
|
103
|
+
/**
|
|
104
|
+
* Hook that returns the taxonomies associated with a specific post type.
|
|
105
|
+
*
|
|
106
|
+
* @param {string} postType The post type from which to retrieve the associated taxonomies.
|
|
107
|
+
* @return {Object[]} An array of the associated taxonomies.
|
|
108
|
+
*/
|
|
109
|
+
|
|
110
|
+
export const useTaxonomies = postType => {
|
|
111
|
+
const taxonomies = useSelect(select => {
|
|
112
|
+
const {
|
|
113
|
+
getTaxonomies
|
|
114
|
+
} = select(coreStore);
|
|
115
|
+
const filteredTaxonomies = getTaxonomies({
|
|
116
|
+
type: postType,
|
|
117
|
+
per_page: -1,
|
|
118
|
+
context: 'view'
|
|
119
|
+
});
|
|
120
|
+
return filteredTaxonomies;
|
|
121
|
+
}, [postType]);
|
|
122
|
+
return taxonomies;
|
|
123
|
+
};
|
|
116
124
|
/**
|
|
117
125
|
* Recurses over a list of blocks and returns the first found
|
|
118
126
|
* Query Loop block's clientId.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/block-library/src/query/utils.js"],"names":["useSelect","useMemo","store","coreStore","
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/query/utils.js"],"names":["useSelect","useMemo","store","coreStore","getEntitiesInfo","entities","mapping","reduce","accumulator","entity","mapById","mapByName","names","id","name","push","usePostTypes","postTypes","select","getPostTypes","excludedPostTypes","filteredPostTypes","per_page","filter","viewable","slug","includes","postTypesTaxonomiesMap","length","type","taxonomies","postTypesSelectOptions","map","labels","label","singular_name","value","useTaxonomies","postType","getTaxonomies","filteredTaxonomies","context","getFirstQueryClientIdFromBlocks","blocks","blocksQueue","block","shift","clientId","innerBlocks","forEach","innerBlock"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect } from '@wordpress/data';\nimport { useMemo } from '@wordpress/element';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * @typedef IHasNameAndId\n * @property {string|number} id The entity's id.\n * @property {string} name The entity's name.\n */\n\n/**\n * The object used in Query block that contains info and helper mappings\n * from an array of IHasNameAndId objects.\n *\n * @typedef {Object} QueryEntitiesInfo\n * @property {IHasNameAndId[]} entities The array of entities.\n * @property {Object<string, IHasNameAndId>} mapById Object mapping with the id as key and the entity as value.\n * @property {Object<string, IHasNameAndId>} mapByName Object mapping with the name as key and the entity as value.\n * @property {string[]} names Array with the entities' names.\n */\n\n/**\n * Returns a helper object with mapping from Objects that implement\n * the `IHasNameAndId` interface. The returned object is used for\n * integration with `FormTokenField` component.\n *\n * @param {IHasNameAndId[]} entities The entities to extract of helper object.\n * @return {QueryEntitiesInfo} The object with the entities information.\n */\nexport const getEntitiesInfo = ( entities ) => {\n\tconst mapping = entities?.reduce(\n\t\t( accumulator, entity ) => {\n\t\t\tconst { mapById, mapByName, names } = accumulator;\n\t\t\tmapById[ entity.id ] = entity;\n\t\t\tmapByName[ entity.name ] = entity;\n\t\t\tnames.push( entity.name );\n\t\t\treturn accumulator;\n\t\t},\n\t\t{ mapById: {}, mapByName: {}, names: [] }\n\t);\n\treturn {\n\t\tentities,\n\t\t...mapping,\n\t};\n};\n\n/**\n * Returns a helper object that contains:\n * 1. An `options` object from the available post types, to be passed to a `SelectControl`.\n * 2. A helper map with available taxonomies per post type.\n *\n * @return {Object} The helper object related to post types.\n */\nexport const usePostTypes = () => {\n\tconst postTypes = useSelect( ( select ) => {\n\t\tconst { getPostTypes } = select( coreStore );\n\t\tconst excludedPostTypes = [ 'attachment' ];\n\t\tconst filteredPostTypes = getPostTypes( { per_page: -1 } )?.filter(\n\t\t\t( { viewable, slug } ) =>\n\t\t\t\tviewable && ! excludedPostTypes.includes( slug )\n\t\t);\n\t\treturn filteredPostTypes;\n\t}, [] );\n\tconst postTypesTaxonomiesMap = useMemo( () => {\n\t\tif ( ! postTypes?.length ) return;\n\t\treturn postTypes.reduce( ( accumulator, type ) => {\n\t\t\taccumulator[ type.slug ] = type.taxonomies;\n\t\t\treturn accumulator;\n\t\t}, {} );\n\t}, [ postTypes ] );\n\tconst postTypesSelectOptions = useMemo(\n\t\t() =>\n\t\t\t( postTypes || [] ).map( ( { labels, slug } ) => ( {\n\t\t\t\tlabel: labels.singular_name,\n\t\t\t\tvalue: slug,\n\t\t\t} ) ),\n\t\t[ postTypes ]\n\t);\n\treturn { postTypesTaxonomiesMap, postTypesSelectOptions };\n};\n\n/**\n * Hook that returns the taxonomies associated with a specific post type.\n *\n * @param {string} postType The post type from which to retrieve the associated taxonomies.\n * @return {Object[]} An array of the associated taxonomies.\n */\nexport const useTaxonomies = ( postType ) => {\n\tconst taxonomies = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getTaxonomies } = select( coreStore );\n\t\t\tconst filteredTaxonomies = getTaxonomies( {\n\t\t\t\ttype: postType,\n\t\t\t\tper_page: -1,\n\t\t\t\tcontext: 'view',\n\t\t\t} );\n\t\t\treturn filteredTaxonomies;\n\t\t},\n\t\t[ postType ]\n\t);\n\treturn taxonomies;\n};\n\n/**\n * Recurses over a list of blocks and returns the first found\n * Query Loop block's clientId.\n *\n * @param {WPBlock[]} blocks The list of blocks to look through.\n * @return {string=} The first found Query Loop's clientId.\n */\nexport const getFirstQueryClientIdFromBlocks = ( blocks ) => {\n\tconst blocksQueue = [ ...blocks ];\n\twhile ( blocksQueue.length > 0 ) {\n\t\tconst block = blocksQueue.shift();\n\t\tif ( block.name === 'core/query' ) {\n\t\t\treturn block.clientId;\n\t\t}\n\t\tblock.innerBlocks?.forEach( ( innerBlock ) => {\n\t\t\tblocksQueue.push( innerBlock );\n\t\t} );\n\t}\n};\n"]}
|
|
@@ -14,8 +14,6 @@ const QUERY_DEFAULT_ATTRIBUTES = {
|
|
|
14
14
|
pages: 0,
|
|
15
15
|
offset: 0,
|
|
16
16
|
postType: 'post',
|
|
17
|
-
categoryIds: [],
|
|
18
|
-
tagIds: [],
|
|
19
17
|
order: 'desc',
|
|
20
18
|
orderBy: 'date',
|
|
21
19
|
author: '',
|
|
@@ -36,8 +34,6 @@ const variations = [{
|
|
|
36
34
|
pages: 1,
|
|
37
35
|
offset: 0,
|
|
38
36
|
postType: 'post',
|
|
39
|
-
categoryIds: [],
|
|
40
|
-
tagIds: [],
|
|
41
37
|
order: 'desc',
|
|
42
38
|
orderBy: 'date',
|
|
43
39
|
author: '',
|