@wordpress/block-library 8.0.0 → 8.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 +2 -0
- package/build/categories/edit.js +1 -1
- package/build/categories/edit.js.map +1 -1
- package/build/cover/edit/inspector-controls.js +1 -1
- package/build/cover/edit/inspector-controls.js.map +1 -1
- package/build/freeform/edit.js +21 -6
- package/build/freeform/edit.js.map +1 -1
- package/build/freeform/modal.js +97 -0
- package/build/freeform/modal.js.map +1 -0
- package/build/gallery/edit.js +13 -2
- package/build/gallery/edit.js.map +1 -1
- package/build/gallery/gallery.js +2 -16
- package/build/gallery/gallery.js.map +1 -1
- package/build/image/image.js +1 -0
- package/build/image/image.js.map +1 -1
- package/build/media-text/edit.js +1 -0
- package/build/media-text/edit.js.map +1 -1
- package/build/missing/edit.native.js +2 -2
- package/build/missing/edit.native.js.map +1 -1
- package/build/navigation/edit/index.js +3 -4
- package/build/navigation/edit/index.js.map +1 -1
- package/build/navigation/edit/menu-inspector-controls.js +29 -7
- package/build/navigation/edit/menu-inspector-controls.js.map +1 -1
- package/build/navigation/edit/navigation-menu-selector.js +11 -8
- package/build/navigation/edit/navigation-menu-selector.js.map +1 -1
- package/build/navigation/edit/utils.js +81 -0
- package/build/navigation/edit/utils.js.map +1 -1
- package/build/navigation-link/edit.js +4 -58
- package/build/navigation-link/edit.js.map +1 -1
- package/build/navigation-submenu/edit.js +7 -72
- package/build/navigation-submenu/edit.js.map +1 -1
- package/build/page-list/edit.js +16 -15
- package/build/page-list/edit.js.map +1 -1
- package/build/page-list/index.js +29 -2
- package/build/page-list/index.js.map +1 -1
- package/build/page-list-item/edit.js +9 -5
- package/build/page-list-item/edit.js.map +1 -1
- package/build/post-featured-image/overlay.js +0 -1
- package/build/post-featured-image/overlay.js.map +1 -1
- package/build/query/edit/index.js +2 -1
- package/build/query/edit/index.js.map +1 -1
- package/build/query/edit/inspector-controls/index.js +10 -5
- package/build/query/edit/inspector-controls/index.js.map +1 -1
- package/build/query/edit/inspector-controls/taxonomy-controls.js +101 -37
- package/build/query/edit/inspector-controls/taxonomy-controls.js.map +1 -1
- package/build/query/edit/query-content.js +2 -3
- package/build/query/edit/query-content.js.map +1 -1
- package/build/query/edit/query-placeholder.js +17 -12
- package/build/query/edit/query-placeholder.js.map +1 -1
- package/build/query/utils.js +73 -1
- package/build/query/utils.js.map +1 -1
- package/build/search/edit.js +2 -2
- package/build/search/edit.js.map +1 -1
- package/build/social-link/edit.js.map +1 -1
- package/build/social-links/edit.js +0 -1
- package/build/social-links/edit.js.map +1 -1
- package/build/table-of-contents/edit.js +1 -1
- package/build/table-of-contents/edit.js.map +1 -1
- package/build/template-part/edit/advanced-controls.js +11 -1
- package/build/template-part/edit/advanced-controls.js.map +1 -1
- package/build/template-part/edit/import-controls.js +160 -0
- package/build/template-part/edit/import-controls.js.map +1 -0
- package/build/template-part/edit/index.js +2 -1
- package/build/template-part/edit/index.js.map +1 -1
- package/build/template-part/edit/utils/transformers.js +48 -0
- package/build/template-part/edit/utils/transformers.js.map +1 -0
- package/build-module/categories/edit.js +1 -1
- package/build-module/categories/edit.js.map +1 -1
- package/build-module/cover/edit/inspector-controls.js +3 -3
- package/build-module/cover/edit/inspector-controls.js.map +1 -1
- package/build-module/freeform/edit.js +22 -8
- package/build-module/freeform/edit.js.map +1 -1
- package/build-module/freeform/modal.js +90 -0
- package/build-module/freeform/modal.js.map +1 -0
- package/build-module/gallery/edit.js +14 -3
- package/build-module/gallery/edit.js.map +1 -1
- package/build-module/gallery/gallery.js +3 -16
- package/build-module/gallery/gallery.js.map +1 -1
- package/build-module/image/image.js +1 -0
- package/build-module/image/image.js.map +1 -1
- package/build-module/media-text/edit.js +1 -0
- package/build-module/media-text/edit.js.map +1 -1
- package/build-module/missing/edit.native.js +2 -2
- package/build-module/missing/edit.native.js.map +1 -1
- package/build-module/navigation/edit/index.js +3 -4
- package/build-module/navigation/edit/index.js.map +1 -1
- package/build-module/navigation/edit/menu-inspector-controls.js +30 -9
- package/build-module/navigation/edit/menu-inspector-controls.js.map +1 -1
- package/build-module/navigation/edit/navigation-menu-selector.js +12 -9
- package/build-module/navigation/edit/navigation-menu-selector.js.map +1 -1
- package/build-module/navigation/edit/utils.js +75 -0
- package/build-module/navigation/edit/utils.js.map +1 -1
- package/build-module/navigation-link/edit.js +4 -59
- package/build-module/navigation-link/edit.js.map +1 -1
- package/build-module/navigation-submenu/edit.js +6 -72
- package/build-module/navigation-submenu/edit.js.map +1 -1
- package/build-module/page-list/edit.js +17 -15
- package/build-module/page-list/edit.js.map +1 -1
- package/build-module/page-list/index.js +30 -3
- package/build-module/page-list/index.js.map +1 -1
- package/build-module/page-list-item/edit.js +9 -6
- package/build-module/page-list-item/edit.js.map +1 -1
- package/build-module/post-featured-image/overlay.js +0 -1
- package/build-module/post-featured-image/overlay.js.map +1 -1
- package/build-module/query/edit/index.js +2 -1
- package/build-module/query/edit/index.js.map +1 -1
- package/build-module/query/edit/inspector-controls/index.js +10 -5
- package/build-module/query/edit/inspector-controls/index.js.map +1 -1
- package/build-module/query/edit/inspector-controls/taxonomy-controls.js +99 -35
- package/build-module/query/edit/inspector-controls/taxonomy-controls.js.map +1 -1
- package/build-module/query/edit/query-content.js +1 -1
- package/build-module/query/edit/query-content.js.map +1 -1
- package/build-module/query/edit/query-placeholder.js +16 -12
- package/build-module/query/edit/query-placeholder.js.map +1 -1
- package/build-module/query/utils.js +69 -0
- package/build-module/query/utils.js.map +1 -1
- package/build-module/search/edit.js +2 -2
- package/build-module/search/edit.js.map +1 -1
- package/build-module/social-link/edit.js +2 -2
- package/build-module/social-link/edit.js.map +1 -1
- package/build-module/social-links/edit.js +0 -1
- package/build-module/social-links/edit.js.map +1 -1
- package/build-module/table-of-contents/edit.js +1 -1
- package/build-module/table-of-contents/edit.js.map +1 -1
- package/build-module/template-part/edit/advanced-controls.js +10 -1
- package/build-module/template-part/edit/advanced-controls.js.map +1 -1
- package/build-module/template-part/edit/import-controls.js +146 -0
- package/build-module/template-part/edit/import-controls.js.map +1 -0
- package/build-module/template-part/edit/index.js +2 -1
- package/build-module/template-part/edit/index.js.map +1 -1
- package/build-module/template-part/edit/utils/transformers.js +40 -0
- package/build-module/template-part/edit/utils/transformers.js.map +1 -0
- package/build-style/archives/editor-rtl.css +3 -3
- package/build-style/archives/editor.css +3 -3
- package/build-style/archives/style-rtl.css +3 -3
- package/build-style/archives/style.css +3 -3
- package/build-style/audio/editor-rtl.css +3 -3
- package/build-style/audio/editor.css +3 -3
- package/build-style/audio/style-rtl.css +3 -3
- package/build-style/audio/style.css +3 -3
- package/build-style/audio/theme-rtl.css +3 -3
- package/build-style/audio/theme.css +3 -3
- package/build-style/avatar/editor-rtl.css +3 -3
- package/build-style/avatar/editor.css +3 -3
- package/build-style/avatar/style-rtl.css +3 -3
- package/build-style/avatar/style.css +3 -3
- package/build-style/block/editor-rtl.css +3 -3
- package/build-style/block/editor.css +3 -3
- package/build-style/button/editor-rtl.css +3 -3
- package/build-style/button/editor.css +3 -3
- package/build-style/button/style-rtl.css +3 -3
- package/build-style/button/style.css +3 -3
- package/build-style/buttons/editor-rtl.css +3 -3
- package/build-style/buttons/editor.css +3 -3
- package/build-style/buttons/style-rtl.css +3 -3
- package/build-style/buttons/style.css +3 -3
- package/build-style/calendar/style-rtl.css +3 -3
- package/build-style/calendar/style.css +3 -3
- package/build-style/categories/editor-rtl.css +3 -3
- package/build-style/categories/editor.css +3 -3
- package/build-style/categories/style-rtl.css +3 -3
- package/build-style/categories/style.css +3 -3
- package/build-style/classic-rtl.css +3 -3
- package/build-style/classic.css +3 -3
- package/build-style/code/editor-rtl.css +3 -3
- package/build-style/code/editor.css +3 -3
- package/build-style/code/style-rtl.css +3 -3
- package/build-style/code/style.css +3 -3
- package/build-style/code/theme-rtl.css +3 -3
- package/build-style/code/theme.css +3 -3
- package/build-style/columns/editor-rtl.css +3 -3
- package/build-style/columns/editor.css +3 -3
- package/build-style/columns/style-rtl.css +3 -3
- package/build-style/columns/style.css +3 -3
- package/build-style/comment-author-avatar/editor-rtl.css +3 -3
- package/build-style/comment-author-avatar/editor.css +3 -3
- package/build-style/comment-content/style-rtl.css +3 -3
- package/build-style/comment-content/style.css +3 -3
- package/build-style/comment-template/style-rtl.css +3 -3
- package/build-style/comment-template/style.css +3 -3
- package/build-style/comments/editor-rtl.css +3 -3
- package/build-style/comments/editor.css +3 -3
- package/build-style/comments/style-rtl.css +3 -3
- package/build-style/comments/style.css +3 -3
- package/build-style/comments-pagination/editor-rtl.css +3 -3
- package/build-style/comments-pagination/editor.css +3 -3
- package/build-style/comments-pagination/style-rtl.css +3 -3
- package/build-style/comments-pagination/style.css +3 -3
- package/build-style/comments-pagination-numbers/editor-rtl.css +3 -3
- package/build-style/comments-pagination-numbers/editor.css +3 -3
- package/build-style/comments-title/editor-rtl.css +3 -3
- package/build-style/comments-title/editor.css +3 -3
- package/build-style/common-rtl.css +3 -3
- package/build-style/common.css +3 -3
- package/build-style/cover/editor-rtl.css +3 -3
- package/build-style/cover/editor.css +3 -3
- package/build-style/cover/style-rtl.css +3 -3
- package/build-style/cover/style.css +3 -3
- package/build-style/editor-elements-rtl.css +3 -3
- package/build-style/editor-elements.css +3 -3
- package/build-style/editor-rtl.css +7 -9
- package/build-style/editor.css +7 -9
- package/build-style/elements-rtl.css +3 -3
- package/build-style/elements.css +3 -3
- package/build-style/embed/editor-rtl.css +3 -3
- package/build-style/embed/editor.css +3 -3
- package/build-style/embed/style-rtl.css +3 -3
- package/build-style/embed/style.css +3 -3
- package/build-style/embed/theme-rtl.css +3 -3
- package/build-style/embed/theme.css +3 -3
- package/build-style/file/editor-rtl.css +3 -3
- package/build-style/file/editor.css +3 -3
- package/build-style/file/style-rtl.css +3 -3
- package/build-style/file/style.css +3 -3
- package/build-style/freeform/editor-rtl.css +3 -3
- package/build-style/freeform/editor.css +3 -3
- package/build-style/gallery/editor-rtl.css +3 -3
- package/build-style/gallery/editor.css +3 -3
- package/build-style/gallery/style-rtl.css +3 -3
- package/build-style/gallery/style.css +3 -3
- package/build-style/gallery/theme-rtl.css +3 -3
- package/build-style/gallery/theme.css +3 -3
- package/build-style/group/editor-rtl.css +3 -3
- package/build-style/group/editor.css +3 -3
- package/build-style/group/style-rtl.css +3 -3
- package/build-style/group/style.css +3 -3
- package/build-style/group/theme-rtl.css +3 -3
- package/build-style/group/theme.css +3 -3
- package/build-style/heading/style-rtl.css +3 -3
- package/build-style/heading/style.css +3 -3
- package/build-style/html/editor-rtl.css +3 -3
- package/build-style/html/editor.css +3 -3
- package/build-style/image/editor-rtl.css +3 -3
- package/build-style/image/editor.css +3 -3
- package/build-style/image/style-rtl.css +3 -3
- package/build-style/image/style.css +3 -3
- package/build-style/image/theme-rtl.css +3 -3
- package/build-style/image/theme.css +3 -3
- package/build-style/latest-comments/style-rtl.css +3 -3
- package/build-style/latest-comments/style.css +3 -3
- package/build-style/latest-posts/editor-rtl.css +3 -3
- package/build-style/latest-posts/editor.css +3 -3
- package/build-style/latest-posts/style-rtl.css +3 -3
- package/build-style/latest-posts/style.css +3 -3
- package/build-style/list/style-rtl.css +3 -3
- package/build-style/list/style.css +3 -3
- package/build-style/media-text/editor-rtl.css +3 -3
- package/build-style/media-text/editor.css +3 -3
- package/build-style/media-text/style-rtl.css +3 -3
- package/build-style/media-text/style.css +3 -3
- package/build-style/more/editor-rtl.css +3 -3
- package/build-style/more/editor.css +3 -3
- package/build-style/navigation/editor-rtl.css +3 -9
- package/build-style/navigation/editor.css +3 -9
- package/build-style/navigation/style-rtl.css +3 -4
- package/build-style/navigation/style.css +3 -4
- package/build-style/navigation-link/editor-rtl.css +3 -3
- package/build-style/navigation-link/editor.css +3 -3
- package/build-style/navigation-link/style-rtl.css +3 -3
- package/build-style/navigation-link/style.css +3 -3
- package/build-style/navigation-submenu/editor-rtl.css +3 -3
- package/build-style/navigation-submenu/editor.css +3 -3
- package/build-style/nextpage/editor-rtl.css +3 -3
- package/build-style/nextpage/editor.css +3 -3
- package/build-style/page-list/editor-rtl.css +7 -3
- package/build-style/page-list/editor.css +7 -3
- package/build-style/page-list/style-rtl.css +3 -3
- package/build-style/page-list/style.css +3 -3
- package/build-style/paragraph/editor-rtl.css +3 -3
- package/build-style/paragraph/editor.css +3 -3
- package/build-style/paragraph/style-rtl.css +3 -3
- package/build-style/paragraph/style.css +3 -3
- package/build-style/post-author/style-rtl.css +3 -3
- package/build-style/post-author/style.css +3 -3
- package/build-style/post-comments-form/editor-rtl.css +3 -3
- package/build-style/post-comments-form/editor.css +3 -3
- package/build-style/post-comments-form/style-rtl.css +3 -3
- package/build-style/post-comments-form/style.css +3 -3
- package/build-style/post-date/style-rtl.css +3 -3
- package/build-style/post-date/style.css +3 -3
- package/build-style/post-excerpt/editor-rtl.css +3 -3
- package/build-style/post-excerpt/editor.css +3 -3
- package/build-style/post-excerpt/style-rtl.css +3 -3
- package/build-style/post-excerpt/style.css +3 -3
- package/build-style/post-featured-image/editor-rtl.css +3 -3
- package/build-style/post-featured-image/editor.css +3 -3
- package/build-style/post-featured-image/style-rtl.css +3 -3
- package/build-style/post-featured-image/style.css +3 -3
- package/build-style/post-navigation-link/style-rtl.css +3 -3
- package/build-style/post-navigation-link/style.css +3 -3
- package/build-style/post-template/editor-rtl.css +3 -3
- package/build-style/post-template/editor.css +3 -3
- package/build-style/post-template/style-rtl.css +3 -3
- package/build-style/post-template/style.css +3 -3
- package/build-style/post-terms/style-rtl.css +3 -3
- package/build-style/post-terms/style.css +3 -3
- package/build-style/post-title/style-rtl.css +3 -3
- package/build-style/post-title/style.css +3 -3
- package/build-style/preformatted/style-rtl.css +3 -3
- package/build-style/preformatted/style.css +3 -3
- package/build-style/pullquote/editor-rtl.css +3 -3
- package/build-style/pullquote/editor.css +3 -3
- package/build-style/pullquote/style-rtl.css +3 -3
- package/build-style/pullquote/style.css +3 -3
- package/build-style/pullquote/theme-rtl.css +3 -3
- package/build-style/pullquote/theme.css +3 -3
- package/build-style/query/editor-rtl.css +3 -3
- package/build-style/query/editor.css +3 -3
- package/build-style/query-pagination/editor-rtl.css +3 -3
- package/build-style/query-pagination/editor.css +3 -3
- package/build-style/query-pagination/style-rtl.css +3 -3
- package/build-style/query-pagination/style.css +3 -3
- package/build-style/query-pagination-numbers/editor-rtl.css +3 -3
- package/build-style/query-pagination-numbers/editor.css +3 -3
- package/build-style/query-title/style-rtl.css +3 -3
- package/build-style/query-title/style.css +3 -3
- package/build-style/quote/style-rtl.css +3 -3
- package/build-style/quote/style.css +3 -3
- package/build-style/quote/theme-rtl.css +3 -3
- package/build-style/quote/theme.css +3 -3
- package/build-style/read-more/style-rtl.css +3 -3
- package/build-style/read-more/style.css +3 -3
- package/build-style/reset-rtl.css +3 -3
- package/build-style/reset.css +3 -3
- package/build-style/rss/editor-rtl.css +3 -3
- package/build-style/rss/editor.css +3 -3
- package/build-style/rss/style-rtl.css +3 -3
- package/build-style/rss/style.css +3 -3
- package/build-style/search/editor-rtl.css +3 -3
- package/build-style/search/editor.css +3 -3
- package/build-style/search/style-rtl.css +3 -3
- package/build-style/search/style.css +3 -3
- package/build-style/search/theme-rtl.css +3 -3
- package/build-style/search/theme.css +3 -3
- package/build-style/separator/editor-rtl.css +3 -3
- package/build-style/separator/editor.css +3 -3
- package/build-style/separator/style-rtl.css +3 -3
- package/build-style/separator/style.css +3 -3
- package/build-style/separator/theme-rtl.css +3 -3
- package/build-style/separator/theme.css +3 -3
- package/build-style/shortcode/editor-rtl.css +3 -3
- package/build-style/shortcode/editor.css +3 -3
- package/build-style/site-logo/editor-rtl.css +3 -3
- package/build-style/site-logo/editor.css +3 -3
- package/build-style/site-logo/style-rtl.css +3 -3
- package/build-style/site-logo/style.css +3 -3
- package/build-style/site-tagline/editor-rtl.css +3 -3
- package/build-style/site-tagline/editor.css +3 -3
- package/build-style/site-title/editor-rtl.css +3 -3
- package/build-style/site-title/editor.css +3 -3
- package/build-style/site-title/style-rtl.css +3 -3
- package/build-style/site-title/style.css +3 -3
- package/build-style/social-link/editor-rtl.css +3 -3
- package/build-style/social-link/editor.css +3 -3
- package/build-style/social-links/editor-rtl.css +3 -3
- package/build-style/social-links/editor.css +3 -3
- package/build-style/social-links/style-rtl.css +3 -3
- package/build-style/social-links/style.css +3 -3
- package/build-style/spacer/editor-rtl.css +3 -3
- package/build-style/spacer/editor.css +3 -3
- package/build-style/spacer/style-rtl.css +3 -3
- package/build-style/spacer/style.css +3 -3
- package/build-style/style-rtl.css +13 -5
- package/build-style/style.css +13 -5
- package/build-style/table/editor-rtl.css +3 -3
- package/build-style/table/editor.css +3 -3
- package/build-style/table/style-rtl.css +9 -3
- package/build-style/table/style.css +9 -3
- package/build-style/table/theme-rtl.css +3 -9
- package/build-style/table/theme.css +3 -9
- package/build-style/tag-cloud/style-rtl.css +3 -3
- package/build-style/tag-cloud/style.css +3 -3
- package/build-style/template-part/editor-rtl.css +3 -3
- package/build-style/template-part/editor.css +3 -3
- package/build-style/template-part/theme-rtl.css +3 -3
- package/build-style/template-part/theme.css +3 -3
- package/build-style/text-columns/editor-rtl.css +3 -3
- package/build-style/text-columns/editor.css +3 -3
- package/build-style/text-columns/style-rtl.css +3 -3
- package/build-style/text-columns/style.css +3 -3
- package/build-style/theme-rtl.css +3 -9
- package/build-style/theme.css +3 -9
- package/build-style/verse/style-rtl.css +7 -4
- package/build-style/verse/style.css +7 -4
- package/build-style/video/editor-rtl.css +3 -3
- package/build-style/video/editor.css +3 -3
- package/build-style/video/style-rtl.css +3 -3
- package/build-style/video/style.css +3 -3
- package/build-style/video/theme-rtl.css +3 -3
- package/build-style/video/theme.css +3 -3
- package/package.json +29 -29
- package/src/categories/edit.js +1 -1
- package/src/comments/index.php +0 -1
- package/src/cover/edit/inspector-controls.js +4 -4
- package/src/freeform/edit.js +48 -29
- package/src/freeform/modal.js +111 -0
- package/src/gallery/edit.js +17 -2
- package/src/gallery/gallery.js +3 -13
- package/src/image/image.js +1 -0
- package/src/latest-posts/test/__snapshots__/edit.native.js.snap +3 -0
- package/src/latest-posts/test/edit.native.js +49 -0
- package/src/media-text/edit.js +1 -0
- package/src/missing/edit.native.js +13 -6
- package/src/more/test/__snapshots__/edit.native.js.snap +7 -0
- package/src/more/test/edit.native.js +41 -0
- package/src/navigation/edit/index.js +3 -4
- package/src/navigation/edit/menu-inspector-controls.js +70 -29
- package/src/navigation/edit/navigation-menu-selector.js +19 -9
- package/src/navigation/edit/utils.js +82 -0
- package/src/navigation/editor.scss +0 -7
- package/src/navigation/index.php +32 -0
- package/src/navigation/style.scss +0 -1
- package/src/navigation-link/edit.js +5 -58
- package/src/navigation-link/index.php +32 -0
- package/src/navigation-submenu/edit.js +29 -100
- package/src/navigation-submenu/index.php +32 -0
- package/src/page-list/block.json +18 -1
- package/src/page-list/edit.js +30 -22
- package/src/page-list/editor.scss +4 -0
- package/src/page-list/index.js +8 -2
- package/src/page-list/index.php +9 -10
- package/src/page-list-item/edit.js +17 -9
- package/src/post-featured-image/overlay.js +0 -1
- package/src/query/edit/index.js +1 -0
- package/src/query/edit/inspector-controls/index.js +49 -38
- package/src/query/edit/inspector-controls/taxonomy-controls.js +102 -38
- package/src/query/edit/query-content.js +2 -1
- package/src/query/edit/query-placeholder.js +15 -14
- package/src/query/utils.js +59 -1
- package/src/search/edit.js +2 -2
- package/src/separator/test/__snapshots__/edit.native.js.snap +7 -0
- package/src/separator/test/edit.native.js +41 -0
- package/src/social-link/edit.js +3 -3
- package/src/social-links/edit.js +0 -1
- package/src/table/style.scss +8 -0
- package/src/table/theme.scss +0 -8
- package/src/table-of-contents/edit.js +1 -1
- package/src/template-part/edit/advanced-controls.js +12 -0
- package/src/template-part/edit/import-controls.js +180 -0
- package/src/template-part/edit/index.js +1 -0
- package/src/template-part/edit/utils/transformers.js +37 -0
- package/src/verse/style.scss +4 -1
- package/src/verse/test/__snapshots__/edit.native.js.snap +13 -0
- package/src/verse/test/edit.native.js +40 -33
- package/tsconfig.tsbuildinfo +1 -1
- package/build/query/constants.js +0 -16
- package/build/query/constants.js.map +0 -1
- package/build-module/query/constants.js +0 -7
- package/build-module/query/constants.js.map +0 -1
- package/src/query/constants.js +0 -7
|
@@ -4,12 +4,20 @@
|
|
|
4
4
|
import { FormTokenField } from '@wordpress/components';
|
|
5
5
|
import { useSelect } from '@wordpress/data';
|
|
6
6
|
import { store as coreStore } from '@wordpress/core-data';
|
|
7
|
+
import { useState, useEffect } from '@wordpress/element';
|
|
8
|
+
import { useDebounce } from '@wordpress/compose';
|
|
7
9
|
|
|
8
10
|
/**
|
|
9
11
|
* Internal dependencies
|
|
10
12
|
*/
|
|
11
13
|
import { useTaxonomies } from '../../utils';
|
|
12
|
-
|
|
14
|
+
|
|
15
|
+
const EMPTY_ARRAY = [];
|
|
16
|
+
const BASE_QUERY = {
|
|
17
|
+
order: 'asc',
|
|
18
|
+
_fields: 'id,name',
|
|
19
|
+
context: 'view',
|
|
20
|
+
};
|
|
13
21
|
|
|
14
22
|
// Helper function to get the term id based on user input in terms `FormTokenField`.
|
|
15
23
|
const getTermIdByTermValue = ( terms, termValue ) => {
|
|
@@ -35,20 +43,6 @@ const getTermIdByTermValue = ( terms, termValue ) => {
|
|
|
35
43
|
)?.id;
|
|
36
44
|
};
|
|
37
45
|
|
|
38
|
-
const useTaxonomyTerms = ( slug ) => {
|
|
39
|
-
return useSelect(
|
|
40
|
-
( select ) => {
|
|
41
|
-
const terms = select( coreStore ).getEntityRecords(
|
|
42
|
-
'taxonomy',
|
|
43
|
-
slug,
|
|
44
|
-
{ context: 'view', per_page: MAX_FETCHED_TERMS }
|
|
45
|
-
);
|
|
46
|
-
return { terms };
|
|
47
|
-
},
|
|
48
|
-
[ slug ]
|
|
49
|
-
);
|
|
50
|
-
};
|
|
51
|
-
|
|
52
46
|
export function TaxonomyControls( { onChange, query } ) {
|
|
53
47
|
const { postType, taxQuery } = query;
|
|
54
48
|
|
|
@@ -60,7 +54,7 @@ export function TaxonomyControls( { onChange, query } ) {
|
|
|
60
54
|
return (
|
|
61
55
|
<>
|
|
62
56
|
{ taxonomies.map( ( taxonomy ) => {
|
|
63
|
-
const
|
|
57
|
+
const termIds = taxQuery?.[ taxonomy.slug ] || [];
|
|
64
58
|
const handleChange = ( newTermIds ) =>
|
|
65
59
|
onChange( {
|
|
66
60
|
taxQuery: {
|
|
@@ -73,7 +67,7 @@ export function TaxonomyControls( { onChange, query } ) {
|
|
|
73
67
|
<TaxonomyItem
|
|
74
68
|
key={ taxonomy.slug }
|
|
75
69
|
taxonomy={ taxonomy }
|
|
76
|
-
|
|
70
|
+
termIds={ termIds }
|
|
77
71
|
onChange={ handleChange }
|
|
78
72
|
/>
|
|
79
73
|
);
|
|
@@ -81,38 +75,108 @@ export function TaxonomyControls( { onChange, query } ) {
|
|
|
81
75
|
</>
|
|
82
76
|
);
|
|
83
77
|
}
|
|
84
|
-
function TaxonomyItem( { taxonomy, value, onChange } ) {
|
|
85
|
-
const { terms } = useTaxonomyTerms( taxonomy.slug );
|
|
86
|
-
if ( ! terms?.length ) {
|
|
87
|
-
return null;
|
|
88
|
-
}
|
|
89
78
|
|
|
79
|
+
/**
|
|
80
|
+
* Renders a `FormTokenField` for a given taxonomy.
|
|
81
|
+
*
|
|
82
|
+
* @param {Object} props The props for the component.
|
|
83
|
+
* @param {Object} props.taxonomy The taxonomy object.
|
|
84
|
+
* @param {number[]} props.termIds An array with the block's term ids for the given taxonomy.
|
|
85
|
+
* @param {Function} props.onChange Callback `onChange` function.
|
|
86
|
+
* @return {JSX.Element} The rendered component.
|
|
87
|
+
*/
|
|
88
|
+
function TaxonomyItem( { taxonomy, termIds, onChange } ) {
|
|
89
|
+
const [ search, setSearch ] = useState( '' );
|
|
90
|
+
const [ value, setValue ] = useState( EMPTY_ARRAY );
|
|
91
|
+
const [ suggestions, setSuggestions ] = useState( EMPTY_ARRAY );
|
|
92
|
+
const debouncedSearch = useDebounce( setSearch, 250 );
|
|
93
|
+
const { searchResults, searchHasResolved } = useSelect(
|
|
94
|
+
( select ) => {
|
|
95
|
+
if ( ! search ) {
|
|
96
|
+
return { searchResults: EMPTY_ARRAY, searchHasResolved: true };
|
|
97
|
+
}
|
|
98
|
+
const { getEntityRecords, hasFinishedResolution } =
|
|
99
|
+
select( coreStore );
|
|
100
|
+
const selectorArgs = [
|
|
101
|
+
'taxonomy',
|
|
102
|
+
taxonomy.slug,
|
|
103
|
+
{
|
|
104
|
+
...BASE_QUERY,
|
|
105
|
+
search,
|
|
106
|
+
orderby: 'name',
|
|
107
|
+
exclude: termIds,
|
|
108
|
+
per_page: 20,
|
|
109
|
+
},
|
|
110
|
+
];
|
|
111
|
+
return {
|
|
112
|
+
searchResults: getEntityRecords( ...selectorArgs ),
|
|
113
|
+
searchHasResolved: hasFinishedResolution(
|
|
114
|
+
'getEntityRecords',
|
|
115
|
+
selectorArgs
|
|
116
|
+
),
|
|
117
|
+
};
|
|
118
|
+
},
|
|
119
|
+
[ search, termIds ]
|
|
120
|
+
);
|
|
121
|
+
// `existingTerms` are the ones fetched from the API and their type is `{ id: number; name: string }`.
|
|
122
|
+
// They are used to extract the terms' names to populate the `FormTokenField` properly
|
|
123
|
+
// and to sanitize the provided `termIds`, by setting only the ones that exist.
|
|
124
|
+
const existingTerms = useSelect(
|
|
125
|
+
( select ) => {
|
|
126
|
+
if ( ! termIds?.length ) return EMPTY_ARRAY;
|
|
127
|
+
const { getEntityRecords } = select( coreStore );
|
|
128
|
+
return getEntityRecords( 'taxonomy', taxonomy.slug, {
|
|
129
|
+
...BASE_QUERY,
|
|
130
|
+
include: termIds,
|
|
131
|
+
per_page: termIds.length,
|
|
132
|
+
} );
|
|
133
|
+
},
|
|
134
|
+
[ termIds ]
|
|
135
|
+
);
|
|
136
|
+
// Update the `value` state only after the selectors are resolved
|
|
137
|
+
// to avoid emptying the input when we're changing terms.
|
|
138
|
+
useEffect( () => {
|
|
139
|
+
if ( ! termIds?.length ) {
|
|
140
|
+
setValue( EMPTY_ARRAY );
|
|
141
|
+
}
|
|
142
|
+
if ( ! existingTerms?.length ) return;
|
|
143
|
+
// Returns only the existing entity ids. This prevents the component
|
|
144
|
+
// from crashing in the editor, when non existing ids are provided.
|
|
145
|
+
const sanitizedValue = termIds.reduce( ( accumulator, id ) => {
|
|
146
|
+
const entity = existingTerms.find( ( term ) => term.id === id );
|
|
147
|
+
if ( entity ) {
|
|
148
|
+
accumulator.push( {
|
|
149
|
+
id,
|
|
150
|
+
value: entity.name,
|
|
151
|
+
} );
|
|
152
|
+
}
|
|
153
|
+
return accumulator;
|
|
154
|
+
}, [] );
|
|
155
|
+
setValue( sanitizedValue );
|
|
156
|
+
}, [ termIds, existingTerms ] );
|
|
157
|
+
// Update suggestions only when the query has resolved.
|
|
158
|
+
useEffect( () => {
|
|
159
|
+
if ( ! searchHasResolved ) return;
|
|
160
|
+
setSuggestions( searchResults.map( ( result ) => result.name ) );
|
|
161
|
+
}, [ searchResults, searchHasResolved ] );
|
|
90
162
|
const onTermsChange = ( newTermValues ) => {
|
|
91
|
-
const
|
|
163
|
+
const newTermIds = new Set();
|
|
92
164
|
for ( const termValue of newTermValues ) {
|
|
93
|
-
const termId = getTermIdByTermValue(
|
|
165
|
+
const termId = getTermIdByTermValue( searchResults, termValue );
|
|
94
166
|
if ( termId ) {
|
|
95
|
-
|
|
167
|
+
newTermIds.add( termId );
|
|
96
168
|
}
|
|
97
169
|
}
|
|
98
|
-
|
|
99
|
-
onChange( Array.from(
|
|
170
|
+
setSuggestions( EMPTY_ARRAY );
|
|
171
|
+
onChange( Array.from( newTermIds ) );
|
|
100
172
|
};
|
|
101
|
-
|
|
102
|
-
// Selects only the existing term ids in proper format to be
|
|
103
|
-
// used in `FormTokenField`. This prevents the component from
|
|
104
|
-
// crashing in the editor, when non existing term ids were provided.
|
|
105
|
-
const taxQueryValue = value
|
|
106
|
-
.map( ( termId ) => terms.find( ( t ) => t.id === termId ) )
|
|
107
|
-
.filter( Boolean )
|
|
108
|
-
.map( ( term ) => ( { id: term.id, value: term.name } ) );
|
|
109
|
-
|
|
110
173
|
return (
|
|
111
174
|
<div className="block-library-query-inspector__taxonomy-control">
|
|
112
175
|
<FormTokenField
|
|
113
176
|
label={ taxonomy.name }
|
|
114
|
-
value={
|
|
115
|
-
|
|
177
|
+
value={ value }
|
|
178
|
+
onInputChange={ debouncedSearch }
|
|
179
|
+
suggestions={ suggestions }
|
|
116
180
|
onChange={ onTermsChange }
|
|
117
181
|
__experimentalShowHowTo={ false }
|
|
118
182
|
/>
|
|
@@ -20,7 +20,8 @@ import { __ } from '@wordpress/i18n';
|
|
|
20
20
|
*/
|
|
21
21
|
import QueryToolbar from './query-toolbar';
|
|
22
22
|
import QueryInspectorControls from './inspector-controls';
|
|
23
|
-
|
|
23
|
+
|
|
24
|
+
const DEFAULTS_POSTS_PER_PAGE = 3;
|
|
24
25
|
|
|
25
26
|
const TEMPLATE = [ [ 'core/post-template' ] ];
|
|
26
27
|
export default function QueryContent( {
|
|
@@ -16,6 +16,11 @@ import {
|
|
|
16
16
|
import { Button, Placeholder } from '@wordpress/components';
|
|
17
17
|
import { __ } from '@wordpress/i18n';
|
|
18
18
|
|
|
19
|
+
/**
|
|
20
|
+
* Internal dependencies
|
|
21
|
+
*/
|
|
22
|
+
import { useScopedBlockVariations } from '../utils';
|
|
23
|
+
|
|
19
24
|
export default function QueryPlaceholder( {
|
|
20
25
|
attributes,
|
|
21
26
|
clientId,
|
|
@@ -57,7 +62,6 @@ export default function QueryPlaceholder( {
|
|
|
57
62
|
return (
|
|
58
63
|
<QueryVariationPicker
|
|
59
64
|
clientId={ clientId }
|
|
60
|
-
name={ name }
|
|
61
65
|
attributes={ attributes }
|
|
62
66
|
setAttributes={ setAttributes }
|
|
63
67
|
icon={ icon }
|
|
@@ -98,16 +102,12 @@ export default function QueryPlaceholder( {
|
|
|
98
102
|
|
|
99
103
|
function QueryVariationPicker( {
|
|
100
104
|
clientId,
|
|
101
|
-
name,
|
|
102
105
|
attributes,
|
|
103
106
|
setAttributes,
|
|
104
107
|
icon,
|
|
105
108
|
label,
|
|
106
109
|
} ) {
|
|
107
|
-
const
|
|
108
|
-
( select ) => select( blocksStore ).getBlockVariations( name, 'block' ),
|
|
109
|
-
[ name ]
|
|
110
|
-
);
|
|
110
|
+
const scopeVariations = useScopedBlockVariations( attributes );
|
|
111
111
|
const { replaceInnerBlocks } = useDispatch( blockEditorStore );
|
|
112
112
|
const blockProps = useBlockProps();
|
|
113
113
|
return (
|
|
@@ -115,24 +115,25 @@ function QueryVariationPicker( {
|
|
|
115
115
|
<__experimentalBlockVariationPicker
|
|
116
116
|
icon={ icon }
|
|
117
117
|
label={ label }
|
|
118
|
-
variations={
|
|
119
|
-
onSelect={ (
|
|
120
|
-
if (
|
|
118
|
+
variations={ scopeVariations }
|
|
119
|
+
onSelect={ ( variation ) => {
|
|
120
|
+
if ( variation.attributes ) {
|
|
121
121
|
setAttributes( {
|
|
122
|
-
...
|
|
122
|
+
...variation.attributes,
|
|
123
123
|
query: {
|
|
124
|
-
...
|
|
124
|
+
...variation.attributes.query,
|
|
125
125
|
postType:
|
|
126
126
|
attributes.query.postType ||
|
|
127
|
-
|
|
127
|
+
variation.attributes.query.postType,
|
|
128
128
|
},
|
|
129
|
+
namespace: attributes.namespace,
|
|
129
130
|
} );
|
|
130
131
|
}
|
|
131
|
-
if (
|
|
132
|
+
if ( variation.innerBlocks ) {
|
|
132
133
|
replaceInnerBlocks(
|
|
133
134
|
clientId,
|
|
134
135
|
createBlocksFromInnerBlocksTemplate(
|
|
135
|
-
|
|
136
|
+
variation.innerBlocks
|
|
136
137
|
),
|
|
137
138
|
false
|
|
138
139
|
);
|
package/src/query/utils.js
CHANGED
|
@@ -18,6 +18,8 @@ import { cloneBlock, store as blocksStore } from '@wordpress/blocks';
|
|
|
18
18
|
*/
|
|
19
19
|
import { name as queryLoopName } from './block.json';
|
|
20
20
|
|
|
21
|
+
/** @typedef {import('@wordpress/blocks').WPBlockVariation} WPBlockVariation */
|
|
22
|
+
|
|
21
23
|
/**
|
|
22
24
|
* @typedef IHasNameAndId
|
|
23
25
|
* @property {string|number} id The entity's id.
|
|
@@ -237,7 +239,6 @@ export function useBlockNameForPatterns( clientId, attributes ) {
|
|
|
237
239
|
queryLoopName,
|
|
238
240
|
attributes
|
|
239
241
|
)?.name,
|
|
240
|
-
|
|
241
242
|
[ attributes ]
|
|
242
243
|
);
|
|
243
244
|
const blockName = `${ queryLoopName }/${ activeVariationName }`;
|
|
@@ -260,3 +261,60 @@ export function useBlockNameForPatterns( clientId, attributes ) {
|
|
|
260
261
|
);
|
|
261
262
|
return activeVariationPatterns?.length ? blockName : queryLoopName;
|
|
262
263
|
}
|
|
264
|
+
|
|
265
|
+
/**
|
|
266
|
+
* Helper hook that determines if there is an active variation of the block
|
|
267
|
+
* and if there are available specific scoped `block` variations connected with
|
|
268
|
+
* this variation.
|
|
269
|
+
*
|
|
270
|
+
* If there are, these variations are going to be the only ones suggested
|
|
271
|
+
* to the user in setup flow when clicking to `start blank`, without including
|
|
272
|
+
* the default ones for Query Loop.
|
|
273
|
+
*
|
|
274
|
+
* If there are no such scoped `block` variations, the default ones for Query
|
|
275
|
+
* Loop are going to be suggested.
|
|
276
|
+
*
|
|
277
|
+
* The way we determine such variations is with the convention that they have the `namespace`
|
|
278
|
+
* attribute defined as an array. This array should contain the names(`name` property) of any
|
|
279
|
+
* variations they want to be connected to.
|
|
280
|
+
* For example, if we have a `Query Loop` scoped `inserter` variation with the name `products`,
|
|
281
|
+
* we can connect a scoped `block` variation by setting its `namespace` attribute to `['products']`.
|
|
282
|
+
* If the user selects this variation, the `namespace` attribute will be overridden by the
|
|
283
|
+
* main `inserter` variation.
|
|
284
|
+
*
|
|
285
|
+
* @param {Object} attributes The block's attributes.
|
|
286
|
+
* @return {WPBlockVariation[]} The block variations to be suggested in setup flow, when clicking to `start blank`.
|
|
287
|
+
*/
|
|
288
|
+
export function useScopedBlockVariations( attributes ) {
|
|
289
|
+
const { activeVariationName, blockVariations } = useSelect(
|
|
290
|
+
( select ) => {
|
|
291
|
+
const { getActiveBlockVariation, getBlockVariations } =
|
|
292
|
+
select( blocksStore );
|
|
293
|
+
return {
|
|
294
|
+
activeVariationName: getActiveBlockVariation(
|
|
295
|
+
queryLoopName,
|
|
296
|
+
attributes
|
|
297
|
+
)?.name,
|
|
298
|
+
blockVariations: getBlockVariations( queryLoopName, 'block' ),
|
|
299
|
+
};
|
|
300
|
+
},
|
|
301
|
+
[ attributes ]
|
|
302
|
+
);
|
|
303
|
+
const variations = useMemo( () => {
|
|
304
|
+
// Filter out the variations that have defined a `namespace` attribute,
|
|
305
|
+
// which means they are 'connected' to specific variations of the block.
|
|
306
|
+
const isNotConnected = ( variation ) =>
|
|
307
|
+
! variation.attributes?.namespace;
|
|
308
|
+
if ( ! activeVariationName ) {
|
|
309
|
+
return blockVariations.filter( isNotConnected );
|
|
310
|
+
}
|
|
311
|
+
const connectedVariations = blockVariations.filter( ( variation ) =>
|
|
312
|
+
variation.attributes?.namespace?.includes( activeVariationName )
|
|
313
|
+
);
|
|
314
|
+
if ( !! connectedVariations.length ) {
|
|
315
|
+
return connectedVariations;
|
|
316
|
+
}
|
|
317
|
+
return blockVariations.filter( isNotConnected );
|
|
318
|
+
}, [ activeVariationName, blockVariations ] );
|
|
319
|
+
return variations;
|
|
320
|
+
}
|
package/src/search/edit.js
CHANGED
|
@@ -114,10 +114,10 @@ export default function SearchEdit( {
|
|
|
114
114
|
}
|
|
115
115
|
|
|
116
116
|
const colorProps = useColorProps( attributes );
|
|
117
|
-
const
|
|
117
|
+
const fluidTypographySettings = useSetting( 'typography.fluid' );
|
|
118
118
|
const typographyProps = useTypographyProps(
|
|
119
119
|
attributes,
|
|
120
|
-
|
|
120
|
+
fluidTypographySettings
|
|
121
121
|
);
|
|
122
122
|
const unitControlInstanceId = useInstanceId( UnitControl );
|
|
123
123
|
const unitControlInputId = `wp-block-search__width-${ unitControlInstanceId }`;
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* External dependencies
|
|
3
|
+
*/
|
|
4
|
+
import {
|
|
5
|
+
addBlock,
|
|
6
|
+
getEditorHtml,
|
|
7
|
+
initializeEditor,
|
|
8
|
+
getBlock,
|
|
9
|
+
} from 'test/helpers';
|
|
10
|
+
|
|
11
|
+
/**
|
|
12
|
+
* WordPress dependencies
|
|
13
|
+
*/
|
|
14
|
+
import { getBlockTypes, unregisterBlockType } from '@wordpress/blocks';
|
|
15
|
+
import { registerCoreBlocks } from '@wordpress/block-library';
|
|
16
|
+
|
|
17
|
+
beforeAll( () => {
|
|
18
|
+
// Register all core blocks
|
|
19
|
+
registerCoreBlocks();
|
|
20
|
+
} );
|
|
21
|
+
|
|
22
|
+
afterAll( () => {
|
|
23
|
+
// Clean up registered blocks
|
|
24
|
+
getBlockTypes().forEach( ( block ) => {
|
|
25
|
+
unregisterBlockType( block.name );
|
|
26
|
+
} );
|
|
27
|
+
} );
|
|
28
|
+
|
|
29
|
+
describe( 'Separator block', () => {
|
|
30
|
+
it( 'inserts block', async () => {
|
|
31
|
+
const screen = await initializeEditor();
|
|
32
|
+
|
|
33
|
+
// Add block
|
|
34
|
+
await addBlock( screen, 'Separator' );
|
|
35
|
+
|
|
36
|
+
// Get block
|
|
37
|
+
const separatorBlock = await getBlock( screen, 'Separator' );
|
|
38
|
+
expect( separatorBlock ).toBeVisible();
|
|
39
|
+
expect( getEditorHtml() ).toMatchSnapshot();
|
|
40
|
+
} );
|
|
41
|
+
} );
|
package/src/social-link/edit.js
CHANGED
|
@@ -12,7 +12,7 @@ import {
|
|
|
12
12
|
URLInput,
|
|
13
13
|
useBlockProps,
|
|
14
14
|
} from '@wordpress/block-editor';
|
|
15
|
-
import {
|
|
15
|
+
import { useState } from '@wordpress/element';
|
|
16
16
|
import {
|
|
17
17
|
Button,
|
|
18
18
|
PanelBody,
|
|
@@ -89,7 +89,7 @@ const SocialLinkEdit = ( {
|
|
|
89
89
|
} );
|
|
90
90
|
|
|
91
91
|
return (
|
|
92
|
-
|
|
92
|
+
<>
|
|
93
93
|
<InspectorControls>
|
|
94
94
|
<PanelBody
|
|
95
95
|
title={ sprintf(
|
|
@@ -144,7 +144,7 @@ const SocialLinkEdit = ( {
|
|
|
144
144
|
) }
|
|
145
145
|
</Button>
|
|
146
146
|
</li>
|
|
147
|
-
|
|
147
|
+
</>
|
|
148
148
|
);
|
|
149
149
|
};
|
|
150
150
|
|
package/src/social-links/edit.js
CHANGED
|
@@ -229,7 +229,6 @@ export function SocialLinksEdit( props ) {
|
|
|
229
229
|
( { onChange, label, value, resetAllFilter } ) => (
|
|
230
230
|
<ColorGradientSettingsDropdown
|
|
231
231
|
key={ `social-links-color-${ label }` }
|
|
232
|
-
__experimentalHasMultipleOrigins
|
|
233
232
|
__experimentalIsRenderedInSidebar
|
|
234
233
|
settings={ [
|
|
235
234
|
{
|
package/src/table/style.scss
CHANGED
package/src/table/theme.scss
CHANGED
|
@@ -279,7 +279,7 @@ export default function TableOfContentsEdit( {
|
|
|
279
279
|
<div { ...blockProps }>
|
|
280
280
|
<Placeholder
|
|
281
281
|
icon={ <BlockIcon icon={ icon } /> }
|
|
282
|
-
label=
|
|
282
|
+
label={ __( 'Table of Contents' ) }
|
|
283
283
|
instructions={ __(
|
|
284
284
|
'Start adding Heading blocks to create a table of contents. Headings with HTML anchors will be linked here.'
|
|
285
285
|
) }
|
|
@@ -7,12 +7,18 @@ import { sprintf, __ } from '@wordpress/i18n';
|
|
|
7
7
|
import { InspectorControls } from '@wordpress/block-editor';
|
|
8
8
|
import { useSelect } from '@wordpress/data';
|
|
9
9
|
|
|
10
|
+
/**
|
|
11
|
+
* Internal dependencies
|
|
12
|
+
*/
|
|
13
|
+
import { TemplatePartImportControls } from './import-controls';
|
|
14
|
+
|
|
10
15
|
export function TemplatePartAdvancedControls( {
|
|
11
16
|
tagName,
|
|
12
17
|
setAttributes,
|
|
13
18
|
isEntityAvailable,
|
|
14
19
|
templatePartId,
|
|
15
20
|
defaultWrapper,
|
|
21
|
+
hasInnerBlocks,
|
|
16
22
|
} ) {
|
|
17
23
|
const [ area, setArea ] = useEntityProp(
|
|
18
24
|
'postType',
|
|
@@ -87,6 +93,12 @@ export function TemplatePartAdvancedControls( {
|
|
|
87
93
|
value={ tagName || '' }
|
|
88
94
|
onChange={ ( value ) => setAttributes( { tagName: value } ) }
|
|
89
95
|
/>
|
|
96
|
+
{ ! hasInnerBlocks && (
|
|
97
|
+
<TemplatePartImportControls
|
|
98
|
+
area={ area }
|
|
99
|
+
setAttributes={ setAttributes }
|
|
100
|
+
/>
|
|
101
|
+
) }
|
|
90
102
|
</InspectorControls>
|
|
91
103
|
);
|
|
92
104
|
}
|