@wordpress/block-library 8.4.0 → 8.6.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/build/archives/edit.js +3 -0
- package/build/archives/edit.js.map +1 -1
- package/build/audio/edit.js +2 -0
- package/build/audio/edit.js.map +1 -1
- package/build/avatar/edit.js +5 -9
- package/build/avatar/edit.js.map +1 -1
- package/build/buttons/edit.native.js +1 -1
- package/build/buttons/edit.native.js.map +1 -1
- package/build/categories/edit.js +5 -0
- package/build/categories/edit.js.map +1 -1
- package/build/columns/edit.js +11 -8
- package/build/columns/edit.js.map +1 -1
- package/build/columns/edit.native.js +1 -1
- package/build/columns/edit.native.js.map +1 -1
- package/build/columns/utils.js +2 -2
- package/build/columns/utils.js.map +1 -1
- package/build/comment-author-name/edit.js +2 -0
- package/build/comment-author-name/edit.js.map +1 -1
- package/build/comment-date/edit.js +1 -0
- package/build/comment-date/edit.js.map +1 -1
- package/build/comment-edit-link/edit.js +1 -0
- package/build/comment-edit-link/edit.js.map +1 -1
- package/build/comments/edit/placeholder.js +8 -5
- package/build/comments/edit/placeholder.js.map +1 -1
- package/build/comments-title/edit.js +2 -0
- package/build/comments-title/edit.js.map +1 -1
- package/build/cover/edit/inspector-controls.js +2 -0
- package/build/cover/edit/inspector-controls.js.map +1 -1
- package/build/cover/index.js +13 -4
- package/build/cover/index.js.map +1 -1
- package/build/cover/variations.js +29 -0
- package/build/cover/variations.js.map +1 -0
- package/build/embed/edit.js +13 -14
- package/build/embed/edit.js.map +1 -1
- package/build/embed/edit.native.js +18 -14
- package/build/embed/edit.native.js.map +1 -1
- package/build/embed/embed-controls.js +1 -0
- package/build/embed/embed-controls.js.map +1 -1
- package/build/embed/util.js +39 -12
- package/build/embed/util.js.map +1 -1
- package/build/file/inspector.js +3 -0
- package/build/file/inspector.js.map +1 -1
- package/build/freeform/modal.js +1 -1
- package/build/freeform/modal.js.map +1 -1
- package/build/gallery/edit.js +3 -0
- package/build/gallery/edit.js.map +1 -1
- package/build/gallery/shared.js +4 -8
- package/build/gallery/shared.js.map +1 -1
- package/build/gallery/use-image-sizes.js +4 -8
- package/build/gallery/use-image-sizes.js.map +1 -1
- package/build/gallery/v1/edit.js +8 -3
- package/build/gallery/v1/edit.js.map +1 -1
- package/build/gallery/v1/gallery-image.js +1 -3
- package/build/gallery/v1/gallery-image.js.map +1 -1
- package/build/gallery/v1/shared.js +4 -7
- package/build/gallery/v1/shared.js.map +1 -1
- package/build/image/edit.js +6 -4
- package/build/image/edit.js.map +1 -1
- package/build/image/image.js +6 -2
- package/build/image/image.js.map +1 -1
- package/build/image/utils.js +3 -1
- package/build/image/utils.js.map +1 -1
- package/build/index.js +3 -1
- package/build/index.js.map +1 -1
- package/build/latest-comments/edit.js +3 -0
- package/build/latest-comments/edit.js.map +1 -1
- package/build/latest-posts/edit.js +14 -10
- package/build/latest-posts/edit.js.map +1 -1
- package/build/latest-posts/edit.native.js +3 -3
- package/build/latest-posts/edit.native.js.map +1 -1
- package/build/list/ordered-list-settings.js +1 -0
- package/build/list/ordered-list-settings.js.map +1 -1
- package/build/list-item/edit.js +2 -2
- package/build/list-item/edit.js.map +1 -1
- package/build/list-item/hooks/use-outdent-list-item.js +2 -1
- package/build/list-item/hooks/use-outdent-list-item.js.map +1 -1
- package/build/loginout/edit.js +2 -0
- package/build/loginout/edit.js.map +1 -1
- package/build/media-text/constants.js +17 -1
- package/build/media-text/constants.js.map +1 -1
- package/build/media-text/edit.js +9 -19
- package/build/media-text/edit.js.map +1 -1
- package/build/media-text/edit.native.js +6 -5
- package/build/media-text/edit.native.js.map +1 -1
- package/build/media-text/transforms.js +32 -44
- package/build/media-text/transforms.js.map +1 -1
- package/build/more/edit.js +1 -0
- package/build/more/edit.js.map +1 -1
- package/build/navigation/edit/index.js +64 -68
- package/build/navigation/edit/index.js.map +1 -1
- package/build/navigation/edit/inner-blocks.js +4 -1
- package/build/navigation/edit/inner-blocks.js.map +1 -1
- package/build/navigation/edit/menu-inspector-controls.js +2 -5
- package/build/navigation/edit/menu-inspector-controls.js.map +1 -1
- package/build/navigation/edit/navigation-menu-selector.js +26 -22
- package/build/navigation/edit/navigation-menu-selector.js.map +1 -1
- package/build/navigation/edit/overlay-menu-preview.js +1 -0
- package/build/navigation/edit/overlay-menu-preview.js.map +1 -1
- package/build/navigation/edit/placeholder/index.js +1 -1
- package/build/navigation/edit/placeholder/index.js.map +1 -1
- package/build/navigation/edit/unsaved-inner-blocks.js +14 -1
- package/build/navigation/edit/unsaved-inner-blocks.js.map +1 -1
- package/build/navigation/edit/use-convert-classic-menu-to-block-menu.js +3 -5
- package/build/navigation/edit/use-convert-classic-menu-to-block-menu.js.map +1 -1
- package/build/navigation/edit/use-create-navigation-menu.js +1 -1
- package/build/navigation/edit/use-create-navigation-menu.js.map +1 -1
- package/build/navigation/edit/use-generate-default-navigation-title.js +1 -1
- package/build/navigation/edit/use-generate-default-navigation-title.js.map +1 -1
- package/build/navigation/edit/use-navigation-notice.js +4 -7
- package/build/navigation/edit/use-navigation-notice.js.map +1 -1
- package/build/navigation-link/edit.js +0 -11
- package/build/navigation-link/edit.js.map +1 -1
- package/build/navigation-submenu/edit.js +1 -13
- package/build/navigation-submenu/edit.js.map +1 -1
- package/build/page-list/convert-to-links-modal.js +47 -0
- package/build/page-list/convert-to-links-modal.js.map +1 -0
- package/build/page-list/edit.js +62 -62
- package/build/page-list/edit.js.map +1 -1
- package/build/page-list-item/edit.js +3 -2
- package/build/page-list-item/edit.js.map +1 -1
- package/build/paragraph/edit.js +1 -0
- package/build/paragraph/edit.js.map +1 -1
- package/build/post-author/edit.js +4 -0
- package/build/post-author/edit.js.map +1 -1
- package/build/post-author-name/edit.js +2 -0
- package/build/post-author-name/edit.js.map +1 -1
- package/build/post-content/edit.js +6 -1
- package/build/post-content/edit.js.map +1 -1
- package/build/post-date/edit.js +2 -0
- package/build/post-date/edit.js.map +1 -1
- package/build/post-excerpt/edit.js +1 -0
- package/build/post-excerpt/edit.js.map +1 -1
- package/build/post-featured-image/dimension-controls.js +0 -6
- package/build/post-featured-image/dimension-controls.js.map +1 -1
- package/build/post-featured-image/edit.js +3 -1
- package/build/post-featured-image/edit.js.map +1 -1
- package/build/post-navigation-link/edit.js +2 -0
- package/build/post-navigation-link/edit.js.map +1 -1
- package/build/post-terms/use-post-terms.js +1 -1
- package/build/post-terms/use-post-terms.js.map +1 -1
- package/build/post-time-to-read/edit.js +104 -0
- package/build/post-time-to-read/edit.js.map +1 -0
- package/build/post-time-to-read/icon.js +25 -0
- package/build/post-time-to-read/icon.js.map +1 -0
- package/build/post-time-to-read/index.js +57 -0
- package/build/post-time-to-read/index.js.map +1 -0
- package/build/post-title/edit.js +2 -0
- package/build/post-title/edit.js.map +1 -1
- package/build/pullquote/deprecated.js +3 -3
- package/build/pullquote/deprecated.js.map +1 -1
- package/build/query/edit/inspector-controls/index.js +1 -0
- package/build/query/edit/inspector-controls/index.js.map +1 -1
- package/build/query/edit/query-placeholder.js +3 -2
- package/build/query/edit/query-placeholder.js.map +1 -1
- package/build/query/utils.js +26 -9
- package/build/query/utils.js.map +1 -1
- package/build/query-title/edit.js +2 -0
- package/build/query-title/edit.js.map +1 -1
- package/build/read-more/edit.js +1 -0
- package/build/read-more/edit.js.map +1 -1
- package/build/rss/edit.js +3 -0
- package/build/rss/edit.js.map +1 -1
- package/build/site-logo/edit.js +3 -0
- package/build/site-logo/edit.js.map +1 -1
- package/build/site-tagline/index.js +1 -0
- package/build/site-tagline/index.js.map +1 -1
- package/build/site-title/edit/index.js +2 -0
- package/build/site-title/edit/index.js.map +1 -1
- package/build/social-links/edit.js +4 -1
- package/build/social-links/edit.js.map +1 -1
- package/build/spacer/controls.native.js +10 -8
- package/build/spacer/controls.native.js.map +1 -1
- package/build/spacer/edit.native.js +43 -5
- package/build/spacer/edit.native.js.map +1 -1
- package/build/spacer/save.native.js +30 -0
- package/build/spacer/save.native.js.map +1 -0
- package/build/table/edit.js +3 -0
- package/build/table/edit.js.map +1 -1
- package/build/table/state.js +12 -4
- package/build/table/state.js.map +1 -1
- package/build/table-of-contents/edit.js +1 -0
- package/build/table-of-contents/edit.js.map +1 -1
- package/build/tag-cloud/edit.js +1 -0
- package/build/tag-cloud/edit.js.map +1 -1
- package/build/template-part/edit/import-controls.js +33 -30
- package/build/template-part/edit/import-controls.js.map +1 -1
- package/build/template-part/edit/utils/transformers.js +69 -19
- package/build/template-part/edit/utils/transformers.js.map +1 -1
- package/build/text-columns/edit.js +3 -7
- package/build/text-columns/edit.js.map +1 -1
- package/build/text-columns/save.js +11 -13
- package/build/text-columns/save.js.map +1 -1
- package/build/video/edit-common-settings.js +5 -0
- package/build/video/edit-common-settings.js.map +1 -1
- package/build-module/archives/edit.js +3 -0
- package/build-module/archives/edit.js.map +1 -1
- package/build-module/audio/edit.js +2 -0
- package/build-module/audio/edit.js.map +1 -1
- package/build-module/avatar/edit.js +5 -8
- package/build-module/avatar/edit.js.map +1 -1
- package/build-module/buttons/edit.native.js +1 -1
- package/build-module/buttons/edit.native.js.map +1 -1
- package/build-module/categories/edit.js +5 -0
- package/build-module/categories/edit.js.map +1 -1
- package/build-module/columns/edit.js +11 -7
- package/build-module/columns/edit.js.map +1 -1
- package/build-module/columns/edit.native.js +1 -1
- package/build-module/columns/edit.native.js.map +1 -1
- package/build-module/columns/utils.js +3 -3
- package/build-module/columns/utils.js.map +1 -1
- package/build-module/comment-author-name/edit.js +2 -0
- package/build-module/comment-author-name/edit.js.map +1 -1
- package/build-module/comment-date/edit.js +1 -0
- package/build-module/comment-date/edit.js.map +1 -1
- package/build-module/comment-edit-link/edit.js +1 -0
- package/build-module/comment-edit-link/edit.js.map +1 -1
- package/build-module/comments/edit/placeholder.js +9 -5
- package/build-module/comments/edit/placeholder.js.map +1 -1
- package/build-module/comments-title/edit.js +2 -0
- package/build-module/comments-title/edit.js.map +1 -1
- package/build-module/cover/edit/inspector-controls.js +2 -0
- package/build-module/cover/edit/inspector-controls.js.map +1 -1
- package/build-module/cover/index.js +12 -4
- package/build-module/cover/index.js.map +1 -1
- package/build-module/cover/variations.js +19 -0
- package/build-module/cover/variations.js.map +1 -0
- package/build-module/embed/edit.js +14 -15
- package/build-module/embed/edit.js.map +1 -1
- package/build-module/embed/edit.native.js +19 -15
- package/build-module/embed/edit.native.js.map +1 -1
- package/build-module/embed/embed-controls.js +1 -0
- package/build-module/embed/embed-controls.js.map +1 -1
- package/build-module/embed/util.js +34 -10
- package/build-module/embed/util.js.map +1 -1
- package/build-module/file/inspector.js +3 -0
- package/build-module/file/inspector.js.map +1 -1
- package/build-module/freeform/modal.js +1 -1
- package/build-module/freeform/modal.js.map +1 -1
- package/build-module/gallery/edit.js +3 -0
- package/build-module/gallery/edit.js.map +1 -1
- package/build-module/gallery/shared.js +4 -7
- package/build-module/gallery/shared.js.map +1 -1
- package/build-module/gallery/use-image-sizes.js +4 -7
- package/build-module/gallery/use-image-sizes.js.map +1 -1
- package/build-module/gallery/v1/edit.js +9 -4
- package/build-module/gallery/v1/edit.js.map +1 -1
- package/build-module/gallery/v1/gallery-image.js +1 -2
- package/build-module/gallery/v1/gallery-image.js.map +1 -1
- package/build-module/gallery/v1/shared.js +4 -6
- package/build-module/gallery/v1/shared.js.map +1 -1
- package/build-module/image/edit.js +7 -5
- package/build-module/image/edit.js.map +1 -1
- package/build-module/image/image.js +7 -3
- package/build-module/image/image.js.map +1 -1
- package/build-module/image/utils.js +4 -2
- package/build-module/image/utils.js.map +1 -1
- package/build-module/index.js +2 -1
- package/build-module/index.js.map +1 -1
- package/build-module/latest-comments/edit.js +3 -0
- package/build-module/latest-comments/edit.js.map +1 -1
- package/build-module/latest-posts/edit.js +14 -9
- package/build-module/latest-posts/edit.js.map +1 -1
- package/build-module/latest-posts/edit.native.js +3 -3
- package/build-module/latest-posts/edit.native.js.map +1 -1
- package/build-module/list/ordered-list-settings.js +1 -0
- package/build-module/list/ordered-list-settings.js.map +1 -1
- package/build-module/list-item/edit.js +2 -2
- package/build-module/list-item/edit.js.map +1 -1
- package/build-module/list-item/hooks/use-outdent-list-item.js +2 -1
- package/build-module/list-item/hooks/use-outdent-list-item.js.map +1 -1
- package/build-module/loginout/edit.js +2 -0
- package/build-module/loginout/edit.js.map +1 -1
- package/build-module/media-text/constants.js +10 -0
- package/build-module/media-text/constants.js.map +1 -1
- package/build-module/media-text/edit.js +4 -14
- package/build-module/media-text/edit.js.map +1 -1
- package/build-module/media-text/edit.native.js +4 -3
- package/build-module/media-text/edit.native.js.map +1 -1
- package/build-module/media-text/transforms.js +32 -44
- package/build-module/media-text/transforms.js.map +1 -1
- package/build-module/more/edit.js +1 -0
- package/build-module/more/edit.js.map +1 -1
- package/build-module/navigation/edit/index.js +65 -69
- package/build-module/navigation/edit/index.js.map +1 -1
- package/build-module/navigation/edit/inner-blocks.js +4 -1
- package/build-module/navigation/edit/inner-blocks.js.map +1 -1
- package/build-module/navigation/edit/menu-inspector-controls.js +2 -5
- package/build-module/navigation/edit/menu-inspector-controls.js.map +1 -1
- package/build-module/navigation/edit/navigation-menu-selector.js +25 -22
- package/build-module/navigation/edit/navigation-menu-selector.js.map +1 -1
- package/build-module/navigation/edit/overlay-menu-preview.js +1 -0
- package/build-module/navigation/edit/overlay-menu-preview.js.map +1 -1
- package/build-module/navigation/edit/placeholder/index.js +1 -1
- package/build-module/navigation/edit/placeholder/index.js.map +1 -1
- package/build-module/navigation/edit/unsaved-inner-blocks.js +14 -1
- package/build-module/navigation/edit/unsaved-inner-blocks.js.map +1 -1
- package/build-module/navigation/edit/use-convert-classic-menu-to-block-menu.js +3 -5
- package/build-module/navigation/edit/use-convert-classic-menu-to-block-menu.js.map +1 -1
- package/build-module/navigation/edit/use-create-navigation-menu.js +1 -1
- package/build-module/navigation/edit/use-create-navigation-menu.js.map +1 -1
- package/build-module/navigation/edit/use-generate-default-navigation-title.js +1 -1
- package/build-module/navigation/edit/use-generate-default-navigation-title.js.map +1 -1
- package/build-module/navigation/edit/use-navigation-notice.js +5 -8
- package/build-module/navigation/edit/use-navigation-notice.js.map +1 -1
- package/build-module/navigation-link/edit.js +0 -11
- package/build-module/navigation-link/edit.js.map +1 -1
- package/build-module/navigation-submenu/edit.js +1 -13
- package/build-module/navigation-submenu/edit.js.map +1 -1
- package/build-module/page-list/convert-to-links-modal.js +35 -0
- package/build-module/page-list/convert-to-links-modal.js.map +1 -0
- package/build-module/page-list/edit.js +64 -65
- package/build-module/page-list/edit.js.map +1 -1
- package/build-module/page-list-item/edit.js +3 -2
- package/build-module/page-list-item/edit.js.map +1 -1
- package/build-module/paragraph/edit.js +1 -0
- package/build-module/paragraph/edit.js.map +1 -1
- package/build-module/post-author/edit.js +4 -0
- package/build-module/post-author/edit.js.map +1 -1
- package/build-module/post-author-name/edit.js +2 -0
- package/build-module/post-author-name/edit.js.map +1 -1
- package/build-module/post-content/edit.js +6 -1
- package/build-module/post-content/edit.js.map +1 -1
- package/build-module/post-date/edit.js +2 -0
- package/build-module/post-date/edit.js.map +1 -1
- package/build-module/post-excerpt/edit.js +1 -0
- package/build-module/post-excerpt/edit.js.map +1 -1
- package/build-module/post-featured-image/dimension-controls.js +0 -6
- package/build-module/post-featured-image/dimension-controls.js.map +1 -1
- package/build-module/post-featured-image/edit.js +3 -1
- package/build-module/post-featured-image/edit.js.map +1 -1
- package/build-module/post-navigation-link/edit.js +2 -0
- package/build-module/post-navigation-link/edit.js.map +1 -1
- package/build-module/post-terms/use-post-terms.js +1 -1
- package/build-module/post-terms/use-post-terms.js.map +1 -1
- package/build-module/post-time-to-read/edit.js +90 -0
- package/build-module/post-time-to-read/edit.js.map +1 -0
- package/build-module/post-time-to-read/icon.js +15 -0
- package/build-module/post-time-to-read/icon.js.map +1 -0
- package/build-module/post-time-to-read/index.js +40 -0
- package/build-module/post-time-to-read/index.js.map +1 -0
- package/build-module/post-title/edit.js +2 -0
- package/build-module/post-title/edit.js.map +1 -1
- package/build-module/pullquote/deprecated.js +3 -2
- package/build-module/pullquote/deprecated.js.map +1 -1
- package/build-module/query/edit/inspector-controls/index.js +1 -0
- package/build-module/query/edit/inspector-controls/index.js.map +1 -1
- package/build-module/query/edit/query-placeholder.js +4 -3
- package/build-module/query/edit/query-placeholder.js.map +1 -1
- package/build-module/query/utils.js +21 -6
- package/build-module/query/utils.js.map +1 -1
- package/build-module/query-title/edit.js +2 -0
- package/build-module/query-title/edit.js.map +1 -1
- package/build-module/read-more/edit.js +1 -0
- package/build-module/read-more/edit.js.map +1 -1
- package/build-module/rss/edit.js +3 -0
- package/build-module/rss/edit.js.map +1 -1
- package/build-module/site-logo/edit.js +3 -0
- package/build-module/site-logo/edit.js.map +1 -1
- package/build-module/site-tagline/index.js +1 -0
- package/build-module/site-tagline/index.js.map +1 -1
- package/build-module/site-title/edit/index.js +2 -0
- package/build-module/site-title/edit/index.js.map +1 -1
- package/build-module/social-links/edit.js +4 -1
- package/build-module/social-links/edit.js.map +1 -1
- package/build-module/spacer/controls.native.js +9 -8
- package/build-module/spacer/controls.native.js.map +1 -1
- package/build-module/spacer/edit.native.js +39 -7
- package/build-module/spacer/edit.native.js.map +1 -1
- package/build-module/spacer/save.native.js +22 -0
- package/build-module/spacer/save.native.js.map +1 -0
- package/build-module/table/edit.js +3 -0
- package/build-module/table/edit.js.map +1 -1
- package/build-module/table/state.js +13 -5
- package/build-module/table/state.js.map +1 -1
- package/build-module/table-of-contents/edit.js +1 -0
- package/build-module/table-of-contents/edit.js.map +1 -1
- package/build-module/tag-cloud/edit.js +1 -0
- package/build-module/tag-cloud/edit.js.map +1 -1
- package/build-module/template-part/edit/import-controls.js +32 -29
- package/build-module/template-part/edit/import-controls.js.map +1 -1
- package/build-module/template-part/edit/utils/transformers.js +69 -20
- package/build-module/template-part/edit/utils/transformers.js.map +1 -1
- package/build-module/text-columns/edit.js +3 -6
- package/build-module/text-columns/edit.js.map +1 -1
- package/build-module/text-columns/save.js +11 -12
- package/build-module/text-columns/save.js.map +1 -1
- package/build-module/video/edit-common-settings.js +5 -0
- package/build-module/video/edit-common-settings.js.map +1 -1
- package/build-style/cover/style-rtl.css +11 -5
- package/build-style/cover/style.css +11 -5
- package/build-style/editor-rtl.css +9 -4
- package/build-style/editor.css +9 -4
- package/build-style/navigation/editor-rtl.css +1 -1
- package/build-style/navigation/editor.css +1 -1
- package/build-style/page-list/editor-rtl.css +4 -0
- package/build-style/page-list/editor.css +4 -0
- package/build-style/post-excerpt/editor-rtl.css +1 -1
- package/build-style/post-excerpt/editor.css +1 -1
- package/build-style/post-featured-image/style-rtl.css +1 -0
- package/build-style/post-featured-image/style.css +1 -0
- package/build-style/query/editor-rtl.css +1 -0
- package/build-style/query/editor.css +1 -0
- package/build-style/site-logo/editor-rtl.css +2 -2
- package/build-style/site-logo/editor.css +2 -2
- package/build-style/style-rtl.css +12 -5
- package/build-style/style.css +12 -5
- package/package.json +31 -30
- package/src/archives/edit.js +3 -0
- package/src/audio/edit.js +2 -0
- package/src/audio/test/__snapshots__/edit.native.js.snap +82 -42
- package/src/audio/test/__snapshots__/transforms.native.js.snap +25 -0
- package/src/audio/test/transforms.native.js +42 -0
- package/src/avatar/edit.js +2 -4
- package/src/block/test/__snapshots__/transforms.native.js.snap +15 -0
- package/src/block/test/transforms.native.js +40 -0
- package/src/buttons/edit.native.js +1 -1
- package/src/buttons/test/__snapshots__/edit.native.js.snap +11 -11
- package/src/buttons/test/__snapshots__/transforms.native.js.snap +31 -0
- package/src/buttons/test/transforms.native.js +48 -0
- package/src/categories/edit.js +5 -0
- package/src/code/test/__snapshots__/edit.native.js.snap +2 -2
- package/src/columns/edit.js +29 -17
- package/src/columns/edit.native.js +1 -1
- package/src/columns/test/__snapshots__/edit.native.js.snap +66 -66
- package/src/columns/test/__snapshots__/transforms.native.js.snap +61 -0
- package/src/columns/test/transforms.native.js +91 -0
- package/src/columns/test/utils.js +54 -0
- package/src/columns/utils.js +8 -8
- package/src/comment-author-name/edit.js +2 -0
- package/src/comment-date/edit.js +1 -0
- package/src/comment-edit-link/edit.js +1 -0
- package/src/comment-template/index.php +1 -2
- package/src/comments/edit/placeholder.js +16 -4
- package/src/comments-title/edit.js +2 -0
- package/src/cover/block.json +9 -3
- package/src/cover/edit/inspector-controls.js +2 -0
- package/src/cover/index.js +2 -0
- package/src/cover/index.php +4 -6
- package/src/cover/style.scss +16 -7
- package/src/cover/test/__snapshots__/edit.native.js.snap +36 -36
- package/src/cover/test/__snapshots__/transforms.native.js.snap +73 -0
- package/src/cover/test/transforms.native.js +112 -0
- package/src/cover/variations.js +20 -0
- package/src/embed/edit.js +16 -12
- package/src/embed/edit.native.js +28 -18
- package/src/embed/embed-controls.js +1 -0
- package/src/embed/test/__snapshots__/index.native.js.snap +52 -52
- package/src/embed/test/__snapshots__/transforms.native.js.snap +23 -0
- package/src/embed/test/index.js +12 -0
- package/src/embed/test/transforms.native.js +44 -0
- package/src/embed/util.js +29 -8
- package/src/file/inspector.js +3 -0
- package/src/file/test/__snapshots__/edit.native.js.snap +67 -51
- package/src/file/test/__snapshots__/transforms.native.js.snap +19 -0
- package/src/file/test/transforms.native.js +42 -0
- package/src/freeform/modal.js +1 -1
- package/src/freeform/test/__snapshots__/transforms.native.js.snap +19 -0
- package/src/freeform/test/transforms.native.js +39 -0
- package/src/gallery/edit.js +5 -0
- package/src/gallery/shared.js +6 -11
- package/src/gallery/test/__snapshots__/index.native.js.snap +71 -71
- package/src/gallery/test/__snapshots__/transforms.native.js.snap +53 -0
- package/src/gallery/test/transforms.native.js +52 -0
- package/src/gallery/use-image-sizes.js +3 -16
- package/src/gallery/v1/edit.js +8 -16
- package/src/gallery/v1/gallery-image.js +1 -2
- package/src/gallery/v1/shared.js +5 -10
- package/src/group/test/__snapshots__/edit.native.js.snap +5 -5
- package/src/group/test/__snapshots__/transforms.native.js.snap +35 -0
- package/src/group/test/transforms.native.js +75 -0
- package/src/heading/test/__snapshots__/index.native.js.snap +1 -1
- package/src/heading/test/__snapshots__/transforms.native.js.snap +47 -0
- package/src/heading/test/transforms.native.js +46 -0
- package/src/image/edit.js +4 -4
- package/src/image/image.js +4 -9
- package/src/image/index.php +4 -4
- package/src/image/test/__snapshots__/transforms.native.js.snap +49 -0
- package/src/image/test/transforms.native.js +48 -0
- package/src/image/utils.js +2 -2
- package/src/index.js +2 -0
- package/src/latest-comments/edit.js +3 -0
- package/src/latest-posts/edit.js +15 -16
- package/src/latest-posts/edit.native.js +3 -3
- package/src/latest-posts/test/__snapshots__/transforms.native.js.snap +15 -0
- package/src/latest-posts/test/transforms.native.js +61 -0
- package/src/list/ordered-list-settings.js +1 -0
- package/src/list/test/__snapshots__/edit.native.js.snap +4 -4
- package/src/list/test/__snapshots__/transforms.native.js.snap +85 -0
- package/src/list/test/transforms.native.js +56 -0
- package/src/list-item/edit.js +10 -3
- package/src/list-item/hooks/use-outdent-list-item.js +2 -1
- package/src/loginout/edit.js +2 -0
- package/src/media-text/constants.js +16 -0
- package/src/media-text/edit.js +10 -18
- package/src/media-text/edit.native.js +3 -9
- package/src/media-text/test/__snapshots__/transforms.native.js.snap +73 -0
- package/src/media-text/test/transforms.native.js +112 -0
- package/src/media-text/transforms.js +24 -51
- package/src/missing/test/__snapshots__/edit.native.js.snap +21 -3
- package/src/more/edit.js +1 -0
- package/src/more/test/__snapshots__/transforms.native.js.snap +19 -0
- package/src/more/test/transforms.native.js +42 -0
- package/src/navigation/edit/index.js +121 -76
- package/src/navigation/edit/inner-blocks.js +3 -0
- package/src/navigation/edit/menu-inspector-controls.js +2 -7
- package/src/navigation/edit/navigation-menu-selector.js +41 -25
- package/src/navigation/edit/overlay-menu-preview.js +1 -0
- package/src/navigation/edit/placeholder/index.js +1 -1
- package/src/navigation/edit/unsaved-inner-blocks.js +46 -32
- package/src/navigation/edit/use-convert-classic-menu-to-block-menu.js +124 -122
- package/src/navigation/edit/use-create-navigation-menu.js +1 -1
- package/src/navigation/edit/use-generate-default-navigation-title.js +1 -1
- package/src/navigation/edit/use-navigation-notice.js +16 -13
- package/src/navigation/editor.scss +23 -20
- package/src/navigation/index.php +5 -3
- package/src/navigation-link/edit.js +0 -9
- package/src/navigation-link/index.php +5 -8
- package/src/navigation-link/test/__snapshots__/hooks.js.snap +12 -12
- package/src/navigation-submenu/edit.js +0 -10
- package/src/navigation-submenu/index.php +23 -6
- package/src/nextpage/test/__snapshots__/transforms.native.js.snap +19 -0
- package/src/nextpage/test/transforms.native.js +42 -0
- package/src/page-list/convert-to-links-modal.js +38 -0
- package/src/page-list/edit.js +82 -69
- package/src/page-list/editor.scss +6 -0
- package/src/page-list-item/edit.js +2 -3
- package/src/paragraph/edit.js +1 -0
- package/src/paragraph/test/__snapshots__/transforms.native.js.snap +59 -0
- package/src/paragraph/test/transforms.native.js +50 -0
- package/src/post-author/edit.js +4 -0
- package/src/post-author-name/edit.js +2 -0
- package/src/post-content/edit.js +5 -1
- package/src/post-date/edit.js +2 -0
- package/src/post-excerpt/edit.js +1 -0
- package/src/post-excerpt/editor.scss +1 -1
- package/src/post-excerpt/index.php +1 -2
- package/src/post-featured-image/dimension-controls.js +0 -8
- package/src/post-featured-image/edit.js +3 -1
- package/src/post-featured-image/style.scss +1 -0
- package/src/post-navigation-link/edit.js +2 -0
- package/src/post-terms/index.php +1 -0
- package/src/post-terms/use-post-terms.js +1 -1
- package/src/post-time-to-read/block.json +20 -0
- package/src/post-time-to-read/edit.js +101 -0
- package/src/post-time-to-read/icon.js +15 -0
- package/src/post-time-to-read/index.js +17 -0
- package/src/post-time-to-read/index.php +62 -0
- package/src/post-title/edit.js +2 -0
- package/src/preformatted/test/__snapshots__/edit.native.js.snap +10 -10
- package/src/preformatted/test/__snapshots__/transforms.native.js.snap +31 -0
- package/src/preformatted/test/transforms.native.js +42 -0
- package/src/pullquote/deprecated.js +2 -6
- package/src/pullquote/test/__snapshots__/transforms.native.js.snap +47 -0
- package/src/pullquote/test/transforms.native.js +46 -0
- package/src/query/edit/inspector-controls/index.js +1 -0
- package/src/query/edit/query-placeholder.js +10 -5
- package/src/query/editor.scss +1 -0
- package/src/query/test/utils.js +33 -1
- package/src/query/utils.js +19 -6
- package/src/query-title/edit.js +2 -0
- package/src/quote/test/__snapshots__/transforms.native.js.snap +39 -0
- package/src/quote/test/transforms.native.js +67 -0
- package/src/read-more/edit.js +1 -0
- package/src/rss/edit.js +3 -0
- package/src/search/test/__snapshots__/edit.native.js.snap +71 -61
- package/src/search/test/__snapshots__/transforms.native.js.snap +15 -0
- package/src/search/test/transforms.native.js +40 -0
- package/src/separator/test/__snapshots__/edit.native.js.snap +1 -1
- package/src/separator/test/__snapshots__/transforms.native.js.snap +19 -0
- package/src/separator/test/transforms.native.js +42 -0
- package/src/shortcode/test/__snapshots__/transforms.native.js.snap +19 -0
- package/src/shortcode/test/transforms.native.js +42 -0
- package/src/site-logo/edit.js +3 -0
- package/src/site-logo/editor.scss +3 -3
- package/src/site-logo/index.php +7 -2
- package/src/site-tagline/block.json +1 -0
- package/src/site-title/edit/index.js +2 -0
- package/src/social-link/index.php +6 -6
- package/src/social-links/edit.js +3 -0
- package/src/social-links/test/__snapshots__/edit.native.js.snap +16 -16
- package/src/social-links/test/__snapshots__/transforms.native.js.snap +31 -0
- package/src/social-links/test/transforms.native.js +53 -0
- package/src/spacer/controls.native.js +13 -5
- package/src/spacer/edit.native.js +45 -6
- package/src/spacer/save.native.js +18 -0
- package/src/spacer/test/__snapshots__/index.native.js.snap +21 -9
- package/src/spacer/test/__snapshots__/transforms.native.js.snap +19 -0
- package/src/spacer/test/index.native.js +81 -0
- package/src/spacer/test/transforms.native.js +42 -0
- package/src/table/edit.js +3 -0
- package/src/table/state.js +8 -17
- package/src/table-of-contents/edit.js +1 -0
- package/src/tag-cloud/edit.js +1 -0
- package/src/template-part/edit/import-controls.js +26 -34
- package/src/template-part/edit/utils/transformers.js +96 -19
- package/src/template-part/index.php +7 -6
- package/src/text-columns/edit.js +1 -6
- package/src/text-columns/save.js +1 -6
- package/src/verse/test/__snapshots__/edit.native.js.snap +2 -2
- package/src/verse/test/__snapshots__/transforms.native.js.snap +25 -0
- package/src/verse/test/transforms.native.js +42 -0
- package/src/video/edit-common-settings.js +5 -0
- package/src/video/test/__snapshots__/transforms.native.js.snap +41 -0
- package/src/video/test/transforms.native.js +48 -0
- package/tsconfig.json +2 -1
- package/tsconfig.tsbuildinfo +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/block-library/src/pullquote/deprecated.js"],"names":["classnames","get","getColorClassName","getColorObjectByAttributeValues","RichText","store","blockEditorStore","useBlockProps","select","create","replace","toHTMLString","__UNSTABLE_LINE_SEPARATOR","SOLID_COLOR_CLASS","blockAttributes","value","type","source","selector","multiline","citation","default","mainColor","customMainColor","textColor","customTextColor","parseBorderColor","styleString","matches","match","multilineToInline","html","multilineTag","RegExp","v5","attributes","__experimentalRole","textAlign","save","shouldShowCitation","isEmpty","className","migrate","v4","isSolidColorStyle","includes","figureClasses","figureStyles","backgroundClass","backgroundColor","undefined","borderColor","blockquoteTextColorClass","blockquoteClasses","blockquoteStyles","color","style","border","background","text","v3","figureStyle","attribute","v2","figureClass","colors","getSettings","colorObject","blockquoteStyle","v1","v0","align"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\nimport { get } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tgetColorClassName,\n\tgetColorObjectByAttributeValues,\n\tRichText,\n\tstore as blockEditorStore,\n\tuseBlockProps,\n} from '@wordpress/block-editor';\nimport { select } from '@wordpress/data';\nimport {\n\tcreate,\n\treplace,\n\ttoHTMLString,\n\t__UNSTABLE_LINE_SEPARATOR,\n} from '@wordpress/rich-text';\n\n/**\n * Internal dependencies\n */\nimport { SOLID_COLOR_CLASS } from './shared';\n\nconst blockAttributes = {\n\tvalue: {\n\t\ttype: 'string',\n\t\tsource: 'html',\n\t\tselector: 'blockquote',\n\t\tmultiline: 'p',\n\t},\n\tcitation: {\n\t\ttype: 'string',\n\t\tsource: 'html',\n\t\tselector: 'cite',\n\t\tdefault: '',\n\t},\n\tmainColor: {\n\t\ttype: 'string',\n\t},\n\tcustomMainColor: {\n\t\ttype: 'string',\n\t},\n\ttextColor: {\n\t\ttype: 'string',\n\t},\n\tcustomTextColor: {\n\t\ttype: 'string',\n\t},\n};\n\nfunction parseBorderColor( styleString ) {\n\tif ( ! styleString ) {\n\t\treturn;\n\t}\n\tconst matches = styleString.match( /border-color:([^;]+)[;]?/ );\n\tif ( matches && matches[ 1 ] ) {\n\t\treturn matches[ 1 ];\n\t}\n}\n\nfunction multilineToInline( value ) {\n\treturn toHTMLString( {\n\t\tvalue: replace(\n\t\t\tcreate( { html: value, multilineTag: 'p' } ),\n\t\t\tnew RegExp( __UNSTABLE_LINE_SEPARATOR, 'g' ),\n\t\t\t'\\n'\n\t\t),\n\t} );\n}\n\nconst v5 = {\n\tattributes: {\n\t\tvalue: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'html',\n\t\t\tselector: 'blockquote',\n\t\t\tmultiline: 'p',\n\t\t\t__experimentalRole: 'content',\n\t\t},\n\t\tcitation: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'html',\n\t\t\tselector: 'cite',\n\t\t\tdefault: '',\n\t\t\t__experimentalRole: 'content',\n\t\t},\n\t\ttextAlign: {\n\t\t\ttype: 'string',\n\t\t},\n\t},\n\tsave( { attributes } ) {\n\t\tconst { textAlign, citation, value } = attributes;\n\t\tconst shouldShowCitation = ! RichText.isEmpty( citation );\n\n\t\treturn (\n\t\t\t<figure\n\t\t\t\t{ ...useBlockProps.save( {\n\t\t\t\t\tclassName: classnames( {\n\t\t\t\t\t\t[ `has-text-align-${ textAlign }` ]: textAlign,\n\t\t\t\t\t} ),\n\t\t\t\t} ) }\n\t\t\t>\n\t\t\t\t<blockquote>\n\t\t\t\t\t<RichText.Content value={ value } multiline />\n\t\t\t\t\t{ shouldShowCitation && (\n\t\t\t\t\t\t<RichText.Content tagName=\"cite\" value={ citation } />\n\t\t\t\t\t) }\n\t\t\t\t</blockquote>\n\t\t\t</figure>\n\t\t);\n\t},\n\tmigrate( { value, ...attributes } ) {\n\t\treturn {\n\t\t\tvalue: multilineToInline( value ),\n\t\t\t...attributes,\n\t\t};\n\t},\n};\n\n// TODO: this is ripe for a bit of a clean up according to the example in https://developer.wordpress.org/block-editor/reference-guides/block-api/block-deprecation/#example\n\nconst v4 = {\n\tattributes: {\n\t\t...blockAttributes,\n\t},\n\tsave( { attributes } ) {\n\t\tconst {\n\t\t\tmainColor,\n\t\t\tcustomMainColor,\n\t\t\tcustomTextColor,\n\t\t\ttextColor,\n\t\t\tvalue,\n\t\t\tcitation,\n\t\t\tclassName,\n\t\t} = attributes;\n\n\t\tconst isSolidColorStyle = className?.includes( SOLID_COLOR_CLASS );\n\n\t\tlet figureClasses, figureStyles;\n\n\t\t// Is solid color style\n\t\tif ( isSolidColorStyle ) {\n\t\t\tconst backgroundClass = getColorClassName(\n\t\t\t\t'background-color',\n\t\t\t\tmainColor\n\t\t\t);\n\n\t\t\tfigureClasses = classnames( {\n\t\t\t\t'has-background': backgroundClass || customMainColor,\n\t\t\t\t[ backgroundClass ]: backgroundClass,\n\t\t\t} );\n\n\t\t\tfigureStyles = {\n\t\t\t\tbackgroundColor: backgroundClass ? undefined : customMainColor,\n\t\t\t};\n\t\t\t// Is normal style and a custom color is being used ( we can set a style directly with its value)\n\t\t} else if ( customMainColor ) {\n\t\t\tfigureStyles = {\n\t\t\t\tborderColor: customMainColor,\n\t\t\t};\n\t\t}\n\n\t\tconst blockquoteTextColorClass = getColorClassName(\n\t\t\t'color',\n\t\t\ttextColor\n\t\t);\n\t\tconst blockquoteClasses = classnames( {\n\t\t\t'has-text-color': textColor || customTextColor,\n\t\t\t[ blockquoteTextColorClass ]: blockquoteTextColorClass,\n\t\t} );\n\n\t\tconst blockquoteStyles = blockquoteTextColorClass\n\t\t\t? undefined\n\t\t\t: { color: customTextColor };\n\n\t\treturn (\n\t\t\t<figure\n\t\t\t\t{ ...useBlockProps.save( {\n\t\t\t\t\tclassName: figureClasses,\n\t\t\t\t\tstyle: figureStyles,\n\t\t\t\t} ) }\n\t\t\t>\n\t\t\t\t<blockquote\n\t\t\t\t\tclassName={ blockquoteClasses }\n\t\t\t\t\tstyle={ blockquoteStyles }\n\t\t\t\t>\n\t\t\t\t\t<RichText.Content value={ value } multiline />\n\t\t\t\t\t{ ! RichText.isEmpty( citation ) && (\n\t\t\t\t\t\t<RichText.Content tagName=\"cite\" value={ citation } />\n\t\t\t\t\t) }\n\t\t\t\t</blockquote>\n\t\t\t</figure>\n\t\t);\n\t},\n\tmigrate( {\n\t\tvalue,\n\t\tclassName,\n\t\tmainColor,\n\t\tcustomMainColor,\n\t\tcustomTextColor,\n\t\t...attributes\n\t} ) {\n\t\tconst isSolidColorStyle = className?.includes( SOLID_COLOR_CLASS );\n\t\tlet style;\n\n\t\tif ( customMainColor ) {\n\t\t\tif ( ! isSolidColorStyle ) {\n\t\t\t\t// Block supports: Set style.border.color if a deprecated block has a default style and a `customMainColor` attribute.\n\t\t\t\tstyle = {\n\t\t\t\t\tborder: {\n\t\t\t\t\t\tcolor: customMainColor,\n\t\t\t\t\t},\n\t\t\t\t};\n\t\t\t} else {\n\t\t\t\t// Block supports: Set style.color.background if a deprecated block has a solid style and a `customMainColor` attribute.\n\t\t\t\tstyle = {\n\t\t\t\t\tcolor: {\n\t\t\t\t\t\tbackground: customMainColor,\n\t\t\t\t\t},\n\t\t\t\t};\n\t\t\t}\n\t\t}\n\n\t\t// Block supports: Set style.color.text if a deprecated block has a `customTextColor` attribute.\n\t\tif ( customTextColor && style ) {\n\t\t\tstyle.color = {\n\t\t\t\t...style.color,\n\t\t\t\ttext: customTextColor,\n\t\t\t};\n\t\t}\n\n\t\treturn {\n\t\t\tvalue: multilineToInline( value ),\n\t\t\tclassName,\n\t\t\tbackgroundColor: isSolidColorStyle ? mainColor : undefined,\n\t\t\tborderColor: isSolidColorStyle ? undefined : mainColor,\n\t\t\ttextAlign: isSolidColorStyle ? 'left' : undefined,\n\t\t\tstyle,\n\t\t\t...attributes,\n\t\t};\n\t},\n};\n\nconst v3 = {\n\tattributes: {\n\t\t...blockAttributes,\n\t\t// figureStyle is an attribute that never existed.\n\t\t// We are using it as a way to access the styles previously applied to the figure.\n\t\tfigureStyle: {\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'figure',\n\t\t\tattribute: 'style',\n\t\t},\n\t},\n\tsave( { attributes } ) {\n\t\tconst {\n\t\t\tmainColor,\n\t\t\tcustomMainColor,\n\t\t\ttextColor,\n\t\t\tcustomTextColor,\n\t\t\tvalue,\n\t\t\tcitation,\n\t\t\tclassName,\n\t\t\tfigureStyle,\n\t\t} = attributes;\n\n\t\tconst isSolidColorStyle = className?.includes( SOLID_COLOR_CLASS );\n\n\t\tlet figureClasses, figureStyles;\n\n\t\t// Is solid color style\n\t\tif ( isSolidColorStyle ) {\n\t\t\tconst backgroundClass = getColorClassName(\n\t\t\t\t'background-color',\n\t\t\t\tmainColor\n\t\t\t);\n\n\t\t\tfigureClasses = classnames( {\n\t\t\t\t'has-background': backgroundClass || customMainColor,\n\t\t\t\t[ backgroundClass ]: backgroundClass,\n\t\t\t} );\n\n\t\t\tfigureStyles = {\n\t\t\t\tbackgroundColor: backgroundClass ? undefined : customMainColor,\n\t\t\t};\n\t\t\t// Is normal style and a custom color is being used ( we can set a style directly with its value)\n\t\t} else if ( customMainColor ) {\n\t\t\tfigureStyles = {\n\t\t\t\tborderColor: customMainColor,\n\t\t\t};\n\t\t\t// If normal style and a named color are being used, we need to retrieve the color value to set the style,\n\t\t\t// as there is no expectation that themes create classes that set border colors.\n\t\t} else if ( mainColor ) {\n\t\t\t// Previously here we queried the color settings to know the color value\n\t\t\t// of a named color. This made the save function impure and the block was refactored,\n\t\t\t// because meanwhile a change in the editor made it impossible to query color settings in the save function.\n\t\t\t// Here instead of querying the color settings to know the color value, we retrieve the value\n\t\t\t// directly from the style previously serialized.\n\t\t\tconst borderColor = parseBorderColor( figureStyle );\n\t\t\tfigureStyles = {\n\t\t\t\tborderColor,\n\t\t\t};\n\t\t}\n\n\t\tconst blockquoteTextColorClass = getColorClassName(\n\t\t\t'color',\n\t\t\ttextColor\n\t\t);\n\t\tconst blockquoteClasses =\n\t\t\t( textColor || customTextColor ) &&\n\t\t\tclassnames( 'has-text-color', {\n\t\t\t\t[ blockquoteTextColorClass ]: blockquoteTextColorClass,\n\t\t\t} );\n\n\t\tconst blockquoteStyles = blockquoteTextColorClass\n\t\t\t? undefined\n\t\t\t: { color: customTextColor };\n\n\t\treturn (\n\t\t\t<figure className={ figureClasses } style={ figureStyles }>\n\t\t\t\t<blockquote\n\t\t\t\t\tclassName={ blockquoteClasses }\n\t\t\t\t\tstyle={ blockquoteStyles }\n\t\t\t\t>\n\t\t\t\t\t<RichText.Content value={ value } multiline />\n\t\t\t\t\t{ ! RichText.isEmpty( citation ) && (\n\t\t\t\t\t\t<RichText.Content tagName=\"cite\" value={ citation } />\n\t\t\t\t\t) }\n\t\t\t\t</blockquote>\n\t\t\t</figure>\n\t\t);\n\t},\n\tmigrate( {\n\t\tvalue,\n\t\tclassName,\n\t\tfigureStyle,\n\t\tmainColor,\n\t\tcustomMainColor,\n\t\tcustomTextColor,\n\t\t...attributes\n\t} ) {\n\t\tconst isSolidColorStyle = className?.includes( SOLID_COLOR_CLASS );\n\t\tlet style;\n\n\t\tif ( customMainColor ) {\n\t\t\tif ( ! isSolidColorStyle ) {\n\t\t\t\t// Block supports: Set style.border.color if a deprecated block has a default style and a `customMainColor` attribute.\n\t\t\t\tstyle = {\n\t\t\t\t\tborder: {\n\t\t\t\t\t\tcolor: customMainColor,\n\t\t\t\t\t},\n\t\t\t\t};\n\t\t\t} else {\n\t\t\t\t// Block supports: Set style.color.background if a deprecated block has a solid style and a `customMainColor` attribute.\n\t\t\t\tstyle = {\n\t\t\t\t\tcolor: {\n\t\t\t\t\t\tbackground: customMainColor,\n\t\t\t\t\t},\n\t\t\t\t};\n\t\t\t}\n\t\t}\n\n\t\t// Block supports: Set style.color.text if a deprecated block has a `customTextColor` attribute.\n\t\tif ( customTextColor && style ) {\n\t\t\tstyle.color = {\n\t\t\t\t...style.color,\n\t\t\t\ttext: customTextColor,\n\t\t\t};\n\t\t}\n\t\t// If is the default style, and a main color is set,\n\t\t// migrate the main color value into a custom border color.\n\t\t// The custom border color value is retrieved by parsing the figure styles.\n\t\tif ( ! isSolidColorStyle && mainColor && figureStyle ) {\n\t\t\tconst borderColor = parseBorderColor( figureStyle );\n\t\t\tif ( borderColor ) {\n\t\t\t\treturn {\n\t\t\t\t\tvalue: multilineToInline( value ),\n\t\t\t\t\t...attributes,\n\t\t\t\t\tclassName,\n\t\t\t\t\t// Block supports: Set style.border.color if a deprecated block has `mainColor`, inline border CSS and is not a solid color style.\n\t\t\t\t\tstyle: {\n\t\t\t\t\t\tborder: {\n\t\t\t\t\t\t\tcolor: borderColor,\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t};\n\t\t\t}\n\t\t}\n\t\treturn {\n\t\t\tvalue: multilineToInline( value ),\n\t\t\tclassName,\n\t\t\tbackgroundColor: isSolidColorStyle ? mainColor : undefined,\n\t\t\tborderColor: isSolidColorStyle ? undefined : mainColor,\n\t\t\ttextAlign: isSolidColorStyle ? 'left' : undefined,\n\t\t\tstyle,\n\t\t\t...attributes,\n\t\t};\n\t},\n};\n\nconst v2 = {\n\tattributes: blockAttributes,\n\tsave( { attributes } ) {\n\t\tconst {\n\t\t\tmainColor,\n\t\t\tcustomMainColor,\n\t\t\ttextColor,\n\t\t\tcustomTextColor,\n\t\t\tvalue,\n\t\t\tcitation,\n\t\t\tclassName,\n\t\t} = attributes;\n\t\tconst isSolidColorStyle = className?.includes( SOLID_COLOR_CLASS );\n\n\t\tlet figureClass, figureStyles;\n\t\t// Is solid color style\n\t\tif ( isSolidColorStyle ) {\n\t\t\tfigureClass = getColorClassName( 'background-color', mainColor );\n\t\t\tif ( ! figureClass ) {\n\t\t\t\tfigureStyles = {\n\t\t\t\t\tbackgroundColor: customMainColor,\n\t\t\t\t};\n\t\t\t}\n\t\t\t// Is normal style and a custom color is being used ( we can set a style directly with its value)\n\t\t} else if ( customMainColor ) {\n\t\t\tfigureStyles = {\n\t\t\t\tborderColor: customMainColor,\n\t\t\t};\n\t\t\t// Is normal style and a named color is being used, we need to retrieve the color value to set the style,\n\t\t\t// as there is no expectation that themes create classes that set border colors.\n\t\t} else if ( mainColor ) {\n\t\t\tconst colors = get(\n\t\t\t\tselect( blockEditorStore ).getSettings(),\n\t\t\t\t[ 'colors' ],\n\t\t\t\t[]\n\t\t\t);\n\t\t\tconst colorObject = getColorObjectByAttributeValues(\n\t\t\t\tcolors,\n\t\t\t\tmainColor\n\t\t\t);\n\t\t\tfigureStyles = {\n\t\t\t\tborderColor: colorObject.color,\n\t\t\t};\n\t\t}\n\n\t\tconst blockquoteTextColorClass = getColorClassName(\n\t\t\t'color',\n\t\t\ttextColor\n\t\t);\n\t\tconst blockquoteClasses =\n\t\t\ttextColor || customTextColor\n\t\t\t\t? classnames( 'has-text-color', {\n\t\t\t\t\t\t[ blockquoteTextColorClass ]: blockquoteTextColorClass,\n\t\t\t\t } )\n\t\t\t\t: undefined;\n\t\tconst blockquoteStyle = blockquoteTextColorClass\n\t\t\t? undefined\n\t\t\t: { color: customTextColor };\n\t\treturn (\n\t\t\t<figure className={ figureClass } style={ figureStyles }>\n\t\t\t\t<blockquote\n\t\t\t\t\tclassName={ blockquoteClasses }\n\t\t\t\t\tstyle={ blockquoteStyle }\n\t\t\t\t>\n\t\t\t\t\t<RichText.Content value={ value } multiline />\n\t\t\t\t\t{ ! RichText.isEmpty( citation ) && (\n\t\t\t\t\t\t<RichText.Content tagName=\"cite\" value={ citation } />\n\t\t\t\t\t) }\n\t\t\t\t</blockquote>\n\t\t\t</figure>\n\t\t);\n\t},\n\tmigrate( {\n\t\tvalue,\n\t\tclassName,\n\t\tmainColor,\n\t\tcustomMainColor,\n\t\tcustomTextColor,\n\t\t...attributes\n\t} ) {\n\t\tconst isSolidColorStyle = className?.includes( SOLID_COLOR_CLASS );\n\t\tlet style = {};\n\n\t\tif ( customMainColor ) {\n\t\t\tif ( ! isSolidColorStyle ) {\n\t\t\t\t// Block supports: Set style.border.color if a deprecated block has a default style and a `customMainColor` attribute.\n\t\t\t\tstyle = {\n\t\t\t\t\tborder: {\n\t\t\t\t\t\tcolor: customMainColor,\n\t\t\t\t\t},\n\t\t\t\t};\n\t\t\t} else {\n\t\t\t\t// Block supports: Set style.color.background if a deprecated block has a solid style and a `customMainColor` attribute.\n\t\t\t\tstyle = {\n\t\t\t\t\tcolor: {\n\t\t\t\t\t\tbackground: customMainColor,\n\t\t\t\t\t},\n\t\t\t\t};\n\t\t\t}\n\t\t}\n\n\t\t// Block supports: Set style.color.text if a deprecated block has a `customTextColor` attribute.\n\t\tif ( customTextColor && style ) {\n\t\t\tstyle.color = {\n\t\t\t\t...style.color,\n\t\t\t\ttext: customTextColor,\n\t\t\t};\n\t\t}\n\n\t\treturn {\n\t\t\tvalue: multilineToInline( value ),\n\t\t\tclassName,\n\t\t\tbackgroundColor: isSolidColorStyle ? mainColor : undefined,\n\t\t\tborderColor: isSolidColorStyle ? undefined : mainColor,\n\t\t\ttextAlign: isSolidColorStyle ? 'left' : undefined,\n\t\t\tstyle,\n\t\t\t...attributes,\n\t\t};\n\t},\n};\n\nconst v1 = {\n\tattributes: {\n\t\t...blockAttributes,\n\t},\n\tsave( { attributes } ) {\n\t\tconst { value, citation } = attributes;\n\t\treturn (\n\t\t\t<blockquote>\n\t\t\t\t<RichText.Content value={ value } multiline />\n\t\t\t\t{ ! RichText.isEmpty( citation ) && (\n\t\t\t\t\t<RichText.Content tagName=\"cite\" value={ citation } />\n\t\t\t\t) }\n\t\t\t</blockquote>\n\t\t);\n\t},\n\tmigrate( { value, ...attributes } ) {\n\t\treturn {\n\t\t\tvalue: multilineToInline( value ),\n\t\t\t...attributes,\n\t\t};\n\t},\n};\n\nconst v0 = {\n\tattributes: {\n\t\t...blockAttributes,\n\t\tcitation: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'html',\n\t\t\tselector: 'footer',\n\t\t},\n\t\talign: {\n\t\t\ttype: 'string',\n\t\t\tdefault: 'none',\n\t\t},\n\t},\n\n\tsave( { attributes } ) {\n\t\tconst { value, citation, align } = attributes;\n\n\t\treturn (\n\t\t\t<blockquote className={ `align${ align }` }>\n\t\t\t\t<RichText.Content value={ value } multiline />\n\t\t\t\t{ ! RichText.isEmpty( citation ) && (\n\t\t\t\t\t<RichText.Content tagName=\"footer\" value={ citation } />\n\t\t\t\t) }\n\t\t\t</blockquote>\n\t\t);\n\t},\n\tmigrate( { value, ...attributes } ) {\n\t\treturn {\n\t\t\tvalue: multilineToInline( value ),\n\t\t\t...attributes,\n\t\t};\n\t},\n};\n\n/**\n * New deprecations need to be placed first\n * for them to have higher priority.\n *\n * Old deprecations may need to be updated as well.\n *\n * See block-deprecation.md\n */\nexport default [ v5, v4, v3, v2, v1, v0 ];\n"]}
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/pullquote/deprecated.js"],"names":["classnames","getColorClassName","getColorObjectByAttributeValues","RichText","store","blockEditorStore","useBlockProps","select","create","replace","toHTMLString","__UNSTABLE_LINE_SEPARATOR","SOLID_COLOR_CLASS","blockAttributes","value","type","source","selector","multiline","citation","default","mainColor","customMainColor","textColor","customTextColor","parseBorderColor","styleString","matches","match","multilineToInline","html","multilineTag","RegExp","v5","attributes","__experimentalRole","textAlign","save","shouldShowCitation","isEmpty","className","migrate","v4","isSolidColorStyle","includes","figureClasses","figureStyles","backgroundClass","backgroundColor","undefined","borderColor","blockquoteTextColorClass","blockquoteClasses","blockquoteStyles","color","style","border","background","text","v3","figureStyle","attribute","v2","figureClass","colors","getSettings","colorObject","blockquoteStyle","v1","v0","align"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tgetColorClassName,\n\tgetColorObjectByAttributeValues,\n\tRichText,\n\tstore as blockEditorStore,\n\tuseBlockProps,\n} from '@wordpress/block-editor';\nimport { select } from '@wordpress/data';\nimport {\n\tcreate,\n\treplace,\n\ttoHTMLString,\n\t__UNSTABLE_LINE_SEPARATOR,\n} from '@wordpress/rich-text';\n\n/**\n * Internal dependencies\n */\nimport { SOLID_COLOR_CLASS } from './shared';\n\nconst blockAttributes = {\n\tvalue: {\n\t\ttype: 'string',\n\t\tsource: 'html',\n\t\tselector: 'blockquote',\n\t\tmultiline: 'p',\n\t},\n\tcitation: {\n\t\ttype: 'string',\n\t\tsource: 'html',\n\t\tselector: 'cite',\n\t\tdefault: '',\n\t},\n\tmainColor: {\n\t\ttype: 'string',\n\t},\n\tcustomMainColor: {\n\t\ttype: 'string',\n\t},\n\ttextColor: {\n\t\ttype: 'string',\n\t},\n\tcustomTextColor: {\n\t\ttype: 'string',\n\t},\n};\n\nfunction parseBorderColor( styleString ) {\n\tif ( ! styleString ) {\n\t\treturn;\n\t}\n\tconst matches = styleString.match( /border-color:([^;]+)[;]?/ );\n\tif ( matches && matches[ 1 ] ) {\n\t\treturn matches[ 1 ];\n\t}\n}\n\nfunction multilineToInline( value ) {\n\treturn toHTMLString( {\n\t\tvalue: replace(\n\t\t\tcreate( { html: value, multilineTag: 'p' } ),\n\t\t\tnew RegExp( __UNSTABLE_LINE_SEPARATOR, 'g' ),\n\t\t\t'\\n'\n\t\t),\n\t} );\n}\n\nconst v5 = {\n\tattributes: {\n\t\tvalue: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'html',\n\t\t\tselector: 'blockquote',\n\t\t\tmultiline: 'p',\n\t\t\t__experimentalRole: 'content',\n\t\t},\n\t\tcitation: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'html',\n\t\t\tselector: 'cite',\n\t\t\tdefault: '',\n\t\t\t__experimentalRole: 'content',\n\t\t},\n\t\ttextAlign: {\n\t\t\ttype: 'string',\n\t\t},\n\t},\n\tsave( { attributes } ) {\n\t\tconst { textAlign, citation, value } = attributes;\n\t\tconst shouldShowCitation = ! RichText.isEmpty( citation );\n\n\t\treturn (\n\t\t\t<figure\n\t\t\t\t{ ...useBlockProps.save( {\n\t\t\t\t\tclassName: classnames( {\n\t\t\t\t\t\t[ `has-text-align-${ textAlign }` ]: textAlign,\n\t\t\t\t\t} ),\n\t\t\t\t} ) }\n\t\t\t>\n\t\t\t\t<blockquote>\n\t\t\t\t\t<RichText.Content value={ value } multiline />\n\t\t\t\t\t{ shouldShowCitation && (\n\t\t\t\t\t\t<RichText.Content tagName=\"cite\" value={ citation } />\n\t\t\t\t\t) }\n\t\t\t\t</blockquote>\n\t\t\t</figure>\n\t\t);\n\t},\n\tmigrate( { value, ...attributes } ) {\n\t\treturn {\n\t\t\tvalue: multilineToInline( value ),\n\t\t\t...attributes,\n\t\t};\n\t},\n};\n\n// TODO: this is ripe for a bit of a clean up according to the example in https://developer.wordpress.org/block-editor/reference-guides/block-api/block-deprecation/#example\n\nconst v4 = {\n\tattributes: {\n\t\t...blockAttributes,\n\t},\n\tsave( { attributes } ) {\n\t\tconst {\n\t\t\tmainColor,\n\t\t\tcustomMainColor,\n\t\t\tcustomTextColor,\n\t\t\ttextColor,\n\t\t\tvalue,\n\t\t\tcitation,\n\t\t\tclassName,\n\t\t} = attributes;\n\n\t\tconst isSolidColorStyle = className?.includes( SOLID_COLOR_CLASS );\n\n\t\tlet figureClasses, figureStyles;\n\n\t\t// Is solid color style\n\t\tif ( isSolidColorStyle ) {\n\t\t\tconst backgroundClass = getColorClassName(\n\t\t\t\t'background-color',\n\t\t\t\tmainColor\n\t\t\t);\n\n\t\t\tfigureClasses = classnames( {\n\t\t\t\t'has-background': backgroundClass || customMainColor,\n\t\t\t\t[ backgroundClass ]: backgroundClass,\n\t\t\t} );\n\n\t\t\tfigureStyles = {\n\t\t\t\tbackgroundColor: backgroundClass ? undefined : customMainColor,\n\t\t\t};\n\t\t\t// Is normal style and a custom color is being used ( we can set a style directly with its value)\n\t\t} else if ( customMainColor ) {\n\t\t\tfigureStyles = {\n\t\t\t\tborderColor: customMainColor,\n\t\t\t};\n\t\t}\n\n\t\tconst blockquoteTextColorClass = getColorClassName(\n\t\t\t'color',\n\t\t\ttextColor\n\t\t);\n\t\tconst blockquoteClasses = classnames( {\n\t\t\t'has-text-color': textColor || customTextColor,\n\t\t\t[ blockquoteTextColorClass ]: blockquoteTextColorClass,\n\t\t} );\n\n\t\tconst blockquoteStyles = blockquoteTextColorClass\n\t\t\t? undefined\n\t\t\t: { color: customTextColor };\n\n\t\treturn (\n\t\t\t<figure\n\t\t\t\t{ ...useBlockProps.save( {\n\t\t\t\t\tclassName: figureClasses,\n\t\t\t\t\tstyle: figureStyles,\n\t\t\t\t} ) }\n\t\t\t>\n\t\t\t\t<blockquote\n\t\t\t\t\tclassName={ blockquoteClasses }\n\t\t\t\t\tstyle={ blockquoteStyles }\n\t\t\t\t>\n\t\t\t\t\t<RichText.Content value={ value } multiline />\n\t\t\t\t\t{ ! RichText.isEmpty( citation ) && (\n\t\t\t\t\t\t<RichText.Content tagName=\"cite\" value={ citation } />\n\t\t\t\t\t) }\n\t\t\t\t</blockquote>\n\t\t\t</figure>\n\t\t);\n\t},\n\tmigrate( {\n\t\tvalue,\n\t\tclassName,\n\t\tmainColor,\n\t\tcustomMainColor,\n\t\tcustomTextColor,\n\t\t...attributes\n\t} ) {\n\t\tconst isSolidColorStyle = className?.includes( SOLID_COLOR_CLASS );\n\t\tlet style;\n\n\t\tif ( customMainColor ) {\n\t\t\tif ( ! isSolidColorStyle ) {\n\t\t\t\t// Block supports: Set style.border.color if a deprecated block has a default style and a `customMainColor` attribute.\n\t\t\t\tstyle = {\n\t\t\t\t\tborder: {\n\t\t\t\t\t\tcolor: customMainColor,\n\t\t\t\t\t},\n\t\t\t\t};\n\t\t\t} else {\n\t\t\t\t// Block supports: Set style.color.background if a deprecated block has a solid style and a `customMainColor` attribute.\n\t\t\t\tstyle = {\n\t\t\t\t\tcolor: {\n\t\t\t\t\t\tbackground: customMainColor,\n\t\t\t\t\t},\n\t\t\t\t};\n\t\t\t}\n\t\t}\n\n\t\t// Block supports: Set style.color.text if a deprecated block has a `customTextColor` attribute.\n\t\tif ( customTextColor && style ) {\n\t\t\tstyle.color = {\n\t\t\t\t...style.color,\n\t\t\t\ttext: customTextColor,\n\t\t\t};\n\t\t}\n\n\t\treturn {\n\t\t\tvalue: multilineToInline( value ),\n\t\t\tclassName,\n\t\t\tbackgroundColor: isSolidColorStyle ? mainColor : undefined,\n\t\t\tborderColor: isSolidColorStyle ? undefined : mainColor,\n\t\t\ttextAlign: isSolidColorStyle ? 'left' : undefined,\n\t\t\tstyle,\n\t\t\t...attributes,\n\t\t};\n\t},\n};\n\nconst v3 = {\n\tattributes: {\n\t\t...blockAttributes,\n\t\t// figureStyle is an attribute that never existed.\n\t\t// We are using it as a way to access the styles previously applied to the figure.\n\t\tfigureStyle: {\n\t\t\tsource: 'attribute',\n\t\t\tselector: 'figure',\n\t\t\tattribute: 'style',\n\t\t},\n\t},\n\tsave( { attributes } ) {\n\t\tconst {\n\t\t\tmainColor,\n\t\t\tcustomMainColor,\n\t\t\ttextColor,\n\t\t\tcustomTextColor,\n\t\t\tvalue,\n\t\t\tcitation,\n\t\t\tclassName,\n\t\t\tfigureStyle,\n\t\t} = attributes;\n\n\t\tconst isSolidColorStyle = className?.includes( SOLID_COLOR_CLASS );\n\n\t\tlet figureClasses, figureStyles;\n\n\t\t// Is solid color style\n\t\tif ( isSolidColorStyle ) {\n\t\t\tconst backgroundClass = getColorClassName(\n\t\t\t\t'background-color',\n\t\t\t\tmainColor\n\t\t\t);\n\n\t\t\tfigureClasses = classnames( {\n\t\t\t\t'has-background': backgroundClass || customMainColor,\n\t\t\t\t[ backgroundClass ]: backgroundClass,\n\t\t\t} );\n\n\t\t\tfigureStyles = {\n\t\t\t\tbackgroundColor: backgroundClass ? undefined : customMainColor,\n\t\t\t};\n\t\t\t// Is normal style and a custom color is being used ( we can set a style directly with its value)\n\t\t} else if ( customMainColor ) {\n\t\t\tfigureStyles = {\n\t\t\t\tborderColor: customMainColor,\n\t\t\t};\n\t\t\t// If normal style and a named color are being used, we need to retrieve the color value to set the style,\n\t\t\t// as there is no expectation that themes create classes that set border colors.\n\t\t} else if ( mainColor ) {\n\t\t\t// Previously here we queried the color settings to know the color value\n\t\t\t// of a named color. This made the save function impure and the block was refactored,\n\t\t\t// because meanwhile a change in the editor made it impossible to query color settings in the save function.\n\t\t\t// Here instead of querying the color settings to know the color value, we retrieve the value\n\t\t\t// directly from the style previously serialized.\n\t\t\tconst borderColor = parseBorderColor( figureStyle );\n\t\t\tfigureStyles = {\n\t\t\t\tborderColor,\n\t\t\t};\n\t\t}\n\n\t\tconst blockquoteTextColorClass = getColorClassName(\n\t\t\t'color',\n\t\t\ttextColor\n\t\t);\n\t\tconst blockquoteClasses =\n\t\t\t( textColor || customTextColor ) &&\n\t\t\tclassnames( 'has-text-color', {\n\t\t\t\t[ blockquoteTextColorClass ]: blockquoteTextColorClass,\n\t\t\t} );\n\n\t\tconst blockquoteStyles = blockquoteTextColorClass\n\t\t\t? undefined\n\t\t\t: { color: customTextColor };\n\n\t\treturn (\n\t\t\t<figure className={ figureClasses } style={ figureStyles }>\n\t\t\t\t<blockquote\n\t\t\t\t\tclassName={ blockquoteClasses }\n\t\t\t\t\tstyle={ blockquoteStyles }\n\t\t\t\t>\n\t\t\t\t\t<RichText.Content value={ value } multiline />\n\t\t\t\t\t{ ! RichText.isEmpty( citation ) && (\n\t\t\t\t\t\t<RichText.Content tagName=\"cite\" value={ citation } />\n\t\t\t\t\t) }\n\t\t\t\t</blockquote>\n\t\t\t</figure>\n\t\t);\n\t},\n\tmigrate( {\n\t\tvalue,\n\t\tclassName,\n\t\tfigureStyle,\n\t\tmainColor,\n\t\tcustomMainColor,\n\t\tcustomTextColor,\n\t\t...attributes\n\t} ) {\n\t\tconst isSolidColorStyle = className?.includes( SOLID_COLOR_CLASS );\n\t\tlet style;\n\n\t\tif ( customMainColor ) {\n\t\t\tif ( ! isSolidColorStyle ) {\n\t\t\t\t// Block supports: Set style.border.color if a deprecated block has a default style and a `customMainColor` attribute.\n\t\t\t\tstyle = {\n\t\t\t\t\tborder: {\n\t\t\t\t\t\tcolor: customMainColor,\n\t\t\t\t\t},\n\t\t\t\t};\n\t\t\t} else {\n\t\t\t\t// Block supports: Set style.color.background if a deprecated block has a solid style and a `customMainColor` attribute.\n\t\t\t\tstyle = {\n\t\t\t\t\tcolor: {\n\t\t\t\t\t\tbackground: customMainColor,\n\t\t\t\t\t},\n\t\t\t\t};\n\t\t\t}\n\t\t}\n\n\t\t// Block supports: Set style.color.text if a deprecated block has a `customTextColor` attribute.\n\t\tif ( customTextColor && style ) {\n\t\t\tstyle.color = {\n\t\t\t\t...style.color,\n\t\t\t\ttext: customTextColor,\n\t\t\t};\n\t\t}\n\t\t// If is the default style, and a main color is set,\n\t\t// migrate the main color value into a custom border color.\n\t\t// The custom border color value is retrieved by parsing the figure styles.\n\t\tif ( ! isSolidColorStyle && mainColor && figureStyle ) {\n\t\t\tconst borderColor = parseBorderColor( figureStyle );\n\t\t\tif ( borderColor ) {\n\t\t\t\treturn {\n\t\t\t\t\tvalue: multilineToInline( value ),\n\t\t\t\t\t...attributes,\n\t\t\t\t\tclassName,\n\t\t\t\t\t// Block supports: Set style.border.color if a deprecated block has `mainColor`, inline border CSS and is not a solid color style.\n\t\t\t\t\tstyle: {\n\t\t\t\t\t\tborder: {\n\t\t\t\t\t\t\tcolor: borderColor,\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t};\n\t\t\t}\n\t\t}\n\t\treturn {\n\t\t\tvalue: multilineToInline( value ),\n\t\t\tclassName,\n\t\t\tbackgroundColor: isSolidColorStyle ? mainColor : undefined,\n\t\t\tborderColor: isSolidColorStyle ? undefined : mainColor,\n\t\t\ttextAlign: isSolidColorStyle ? 'left' : undefined,\n\t\t\tstyle,\n\t\t\t...attributes,\n\t\t};\n\t},\n};\n\nconst v2 = {\n\tattributes: blockAttributes,\n\tsave( { attributes } ) {\n\t\tconst {\n\t\t\tmainColor,\n\t\t\tcustomMainColor,\n\t\t\ttextColor,\n\t\t\tcustomTextColor,\n\t\t\tvalue,\n\t\t\tcitation,\n\t\t\tclassName,\n\t\t} = attributes;\n\t\tconst isSolidColorStyle = className?.includes( SOLID_COLOR_CLASS );\n\n\t\tlet figureClass, figureStyles;\n\t\t// Is solid color style\n\t\tif ( isSolidColorStyle ) {\n\t\t\tfigureClass = getColorClassName( 'background-color', mainColor );\n\t\t\tif ( ! figureClass ) {\n\t\t\t\tfigureStyles = {\n\t\t\t\t\tbackgroundColor: customMainColor,\n\t\t\t\t};\n\t\t\t}\n\t\t\t// Is normal style and a custom color is being used ( we can set a style directly with its value)\n\t\t} else if ( customMainColor ) {\n\t\t\tfigureStyles = {\n\t\t\t\tborderColor: customMainColor,\n\t\t\t};\n\t\t\t// Is normal style and a named color is being used, we need to retrieve the color value to set the style,\n\t\t\t// as there is no expectation that themes create classes that set border colors.\n\t\t} else if ( mainColor ) {\n\t\t\tconst colors =\n\t\t\t\tselect( blockEditorStore ).getSettings().colors ?? [];\n\t\t\tconst colorObject = getColorObjectByAttributeValues(\n\t\t\t\tcolors,\n\t\t\t\tmainColor\n\t\t\t);\n\t\t\tfigureStyles = {\n\t\t\t\tborderColor: colorObject.color,\n\t\t\t};\n\t\t}\n\n\t\tconst blockquoteTextColorClass = getColorClassName(\n\t\t\t'color',\n\t\t\ttextColor\n\t\t);\n\t\tconst blockquoteClasses =\n\t\t\ttextColor || customTextColor\n\t\t\t\t? classnames( 'has-text-color', {\n\t\t\t\t\t\t[ blockquoteTextColorClass ]: blockquoteTextColorClass,\n\t\t\t\t } )\n\t\t\t\t: undefined;\n\t\tconst blockquoteStyle = blockquoteTextColorClass\n\t\t\t? undefined\n\t\t\t: { color: customTextColor };\n\t\treturn (\n\t\t\t<figure className={ figureClass } style={ figureStyles }>\n\t\t\t\t<blockquote\n\t\t\t\t\tclassName={ blockquoteClasses }\n\t\t\t\t\tstyle={ blockquoteStyle }\n\t\t\t\t>\n\t\t\t\t\t<RichText.Content value={ value } multiline />\n\t\t\t\t\t{ ! RichText.isEmpty( citation ) && (\n\t\t\t\t\t\t<RichText.Content tagName=\"cite\" value={ citation } />\n\t\t\t\t\t) }\n\t\t\t\t</blockquote>\n\t\t\t</figure>\n\t\t);\n\t},\n\tmigrate( {\n\t\tvalue,\n\t\tclassName,\n\t\tmainColor,\n\t\tcustomMainColor,\n\t\tcustomTextColor,\n\t\t...attributes\n\t} ) {\n\t\tconst isSolidColorStyle = className?.includes( SOLID_COLOR_CLASS );\n\t\tlet style = {};\n\n\t\tif ( customMainColor ) {\n\t\t\tif ( ! isSolidColorStyle ) {\n\t\t\t\t// Block supports: Set style.border.color if a deprecated block has a default style and a `customMainColor` attribute.\n\t\t\t\tstyle = {\n\t\t\t\t\tborder: {\n\t\t\t\t\t\tcolor: customMainColor,\n\t\t\t\t\t},\n\t\t\t\t};\n\t\t\t} else {\n\t\t\t\t// Block supports: Set style.color.background if a deprecated block has a solid style and a `customMainColor` attribute.\n\t\t\t\tstyle = {\n\t\t\t\t\tcolor: {\n\t\t\t\t\t\tbackground: customMainColor,\n\t\t\t\t\t},\n\t\t\t\t};\n\t\t\t}\n\t\t}\n\n\t\t// Block supports: Set style.color.text if a deprecated block has a `customTextColor` attribute.\n\t\tif ( customTextColor && style ) {\n\t\t\tstyle.color = {\n\t\t\t\t...style.color,\n\t\t\t\ttext: customTextColor,\n\t\t\t};\n\t\t}\n\n\t\treturn {\n\t\t\tvalue: multilineToInline( value ),\n\t\t\tclassName,\n\t\t\tbackgroundColor: isSolidColorStyle ? mainColor : undefined,\n\t\t\tborderColor: isSolidColorStyle ? undefined : mainColor,\n\t\t\ttextAlign: isSolidColorStyle ? 'left' : undefined,\n\t\t\tstyle,\n\t\t\t...attributes,\n\t\t};\n\t},\n};\n\nconst v1 = {\n\tattributes: {\n\t\t...blockAttributes,\n\t},\n\tsave( { attributes } ) {\n\t\tconst { value, citation } = attributes;\n\t\treturn (\n\t\t\t<blockquote>\n\t\t\t\t<RichText.Content value={ value } multiline />\n\t\t\t\t{ ! RichText.isEmpty( citation ) && (\n\t\t\t\t\t<RichText.Content tagName=\"cite\" value={ citation } />\n\t\t\t\t) }\n\t\t\t</blockquote>\n\t\t);\n\t},\n\tmigrate( { value, ...attributes } ) {\n\t\treturn {\n\t\t\tvalue: multilineToInline( value ),\n\t\t\t...attributes,\n\t\t};\n\t},\n};\n\nconst v0 = {\n\tattributes: {\n\t\t...blockAttributes,\n\t\tcitation: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'html',\n\t\t\tselector: 'footer',\n\t\t},\n\t\talign: {\n\t\t\ttype: 'string',\n\t\t\tdefault: 'none',\n\t\t},\n\t},\n\n\tsave( { attributes } ) {\n\t\tconst { value, citation, align } = attributes;\n\n\t\treturn (\n\t\t\t<blockquote className={ `align${ align }` }>\n\t\t\t\t<RichText.Content value={ value } multiline />\n\t\t\t\t{ ! RichText.isEmpty( citation ) && (\n\t\t\t\t\t<RichText.Content tagName=\"footer\" value={ citation } />\n\t\t\t\t) }\n\t\t\t</blockquote>\n\t\t);\n\t},\n\tmigrate( { value, ...attributes } ) {\n\t\treturn {\n\t\t\tvalue: multilineToInline( value ),\n\t\t\t...attributes,\n\t\t};\n\t},\n};\n\n/**\n * New deprecations need to be placed first\n * for them to have higher priority.\n *\n * Old deprecations may need to be updated as well.\n *\n * See block-deprecation.md\n */\nexport default [ v5, v4, v3, v2, v1, v0 ];\n"]}
|
|
@@ -103,6 +103,7 @@ export default function QueryInspectorControls(_ref) {
|
|
|
103
103
|
return createElement(Fragment, null, showSettingsPanel && createElement(InspectorControls, null, createElement(PanelBody, {
|
|
104
104
|
title: __('Settings')
|
|
105
105
|
}, showInheritControl && createElement(ToggleControl, {
|
|
106
|
+
__nextHasNoMarginBottom: true,
|
|
106
107
|
label: __('Inherit query from template'),
|
|
107
108
|
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.'),
|
|
108
109
|
checked: !!inherit,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/block-library/src/query/edit/inspector-controls/index.js"],"names":["PanelBody","TextControl","SelectControl","RangeControl","ToggleControl","Notice","__experimentalToolsPanel","ToolsPanel","__experimentalToolsPanelItem","ToolsPanelItem","__","InspectorControls","debounce","useEffect","useState","useCallback","OrderControl","AuthorControl","ParentControl","TaxonomyControls","StickyControl","usePostTypes","useIsPostTypeHierarchical","useAllowedControls","isControlAllowed","useTaxonomies","QueryInspectorControls","attributes","setQuery","setDisplayLayout","query","displayLayout","order","orderBy","author","authorIds","postType","sticky","inherit","taxQuery","parents","allowedControls","showSticky","setShowSticky","postTypesTaxonomiesMap","postTypesSelectOptions","taxonomies","isPostTypeHierarchical","onPostTypeChange","newValue","updateQuery","supportedTaxonomies","updatedTaxQuery","Object","entries","reduce","accumulator","taxonomySlug","terms","includes","keys","length","undefined","querySearch","setQuerySearch","search","onChangeDebounced","cancel","showInheritControl","showPostTypeControl","showColumnsControl","type","showOrderControl","showStickyControl","showSettingsPanel","showTaxControl","showAuthorControl","showSearchControl","showParentControl","showFiltersPanel","value","columns","Math","max","values","some"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tPanelBody,\n\tTextControl,\n\tSelectControl,\n\tRangeControl,\n\tToggleControl,\n\tNotice,\n\t__experimentalToolsPanel as ToolsPanel,\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { InspectorControls } from '@wordpress/block-editor';\nimport { debounce } from '@wordpress/compose';\nimport { useEffect, useState, useCallback } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport OrderControl from './order-control';\nimport AuthorControl from './author-control';\nimport ParentControl from './parent-control';\nimport { TaxonomyControls } from './taxonomy-controls';\nimport StickyControl from './sticky-control';\nimport {\n\tusePostTypes,\n\tuseIsPostTypeHierarchical,\n\tuseAllowedControls,\n\tisControlAllowed,\n\tuseTaxonomies,\n} from '../../utils';\n\nexport default function QueryInspectorControls( {\n\tattributes,\n\tsetQuery,\n\tsetDisplayLayout,\n} ) {\n\tconst { query, displayLayout } = attributes;\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\tparents,\n\t} = query;\n\tconst allowedControls = useAllowedControls( attributes );\n\tconst [ showSticky, setShowSticky ] = useState( postType === 'post' );\n\tconst { postTypesTaxonomiesMap, postTypesSelectOptions } = usePostTypes();\n\tconst taxonomies = useTaxonomies( postType );\n\tconst isPostTypeHierarchical = useIsPostTypeHierarchical( postType );\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\t// We need to reset `parents` because they are tied to each post type.\n\t\tupdateQuery.parents = [];\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\tconst showInheritControl = isControlAllowed( allowedControls, 'inherit' );\n\tconst showPostTypeControl =\n\t\t! inherit && isControlAllowed( allowedControls, 'postType' );\n\tconst showColumnsControl = displayLayout?.type === 'flex';\n\tconst showOrderControl =\n\t\t! inherit && isControlAllowed( allowedControls, 'order' );\n\tconst showStickyControl =\n\t\t! inherit &&\n\t\tshowSticky &&\n\t\tisControlAllowed( allowedControls, 'sticky' );\n\tconst showSettingsPanel =\n\t\tshowInheritControl ||\n\t\tshowPostTypeControl ||\n\t\tshowColumnsControl ||\n\t\tshowOrderControl ||\n\t\tshowStickyControl;\n\tconst showTaxControl =\n\t\t!! taxonomies?.length &&\n\t\tisControlAllowed( allowedControls, 'taxQuery' );\n\tconst showAuthorControl = isControlAllowed( allowedControls, 'author' );\n\tconst showSearchControl = isControlAllowed( allowedControls, 'search' );\n\tconst showParentControl =\n\t\tisControlAllowed( allowedControls, 'parents' ) &&\n\t\tisPostTypeHierarchical;\n\n\tconst showFiltersPanel =\n\t\tshowTaxControl ||\n\t\tshowAuthorControl ||\n\t\tshowSearchControl ||\n\t\tshowParentControl;\n\n\treturn (\n\t\t<>\n\t\t\t{ showSettingsPanel && (\n\t\t\t\t<InspectorControls>\n\t\t\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t\t\t{ showInheritControl && (\n\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\tlabel={ __( 'Inherit query from template' ) }\n\t\t\t\t\t\t\t\thelp={ __(\n\t\t\t\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\t\t\t) }\n\t\t\t\t\t\t\t\tchecked={ !! inherit }\n\t\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\t\tsetQuery( { inherit: !! value } )\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ showPostTypeControl && (\n\t\t\t\t\t\t\t<SelectControl\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\toptions={ postTypesSelectOptions }\n\t\t\t\t\t\t\t\tvalue={ postType }\n\t\t\t\t\t\t\t\tlabel={ __( 'Post type' ) }\n\t\t\t\t\t\t\t\tonChange={ onPostTypeChange }\n\t\t\t\t\t\t\t\thelp={ __(\n\t\t\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\t\t) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ showColumnsControl && (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t<RangeControl\n\t\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Columns' ) }\n\t\t\t\t\t\t\t\t\tvalue={ displayLayout.columns }\n\t\t\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\t\t\tsetDisplayLayout( { columns: value } )\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tmin={ 2 }\n\t\t\t\t\t\t\t\t\tmax={ Math.max( 6, displayLayout.columns ) }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t{ displayLayout.columns > 6 && (\n\t\t\t\t\t\t\t\t\t<Notice\n\t\t\t\t\t\t\t\t\t\tstatus=\"warning\"\n\t\t\t\t\t\t\t\t\t\tisDismissible={ false }\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{ __(\n\t\t\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\t\t) }\n\t\t\t\t\t\t\t\t\t</Notice>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ showOrderControl && (\n\t\t\t\t\t\t\t<OrderControl\n\t\t\t\t\t\t\t\t{ ...{ order, orderBy } }\n\t\t\t\t\t\t\t\tonChange={ setQuery }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ showStickyControl && (\n\t\t\t\t\t\t\t<StickyControl\n\t\t\t\t\t\t\t\tvalue={ sticky }\n\t\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\t\tsetQuery( { sticky: value } )\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</PanelBody>\n\t\t\t\t</InspectorControls>\n\t\t\t) }\n\t\t\t{ ! inherit && showFiltersPanel && (\n\t\t\t\t<InspectorControls>\n\t\t\t\t\t<ToolsPanel\n\t\t\t\t\t\tclassName=\"block-library-query-toolspanel__filters\"\n\t\t\t\t\t\tlabel={ __( 'Filters' ) }\n\t\t\t\t\t\tresetAll={ () => {\n\t\t\t\t\t\t\tsetQuery( {\n\t\t\t\t\t\t\t\tauthor: '',\n\t\t\t\t\t\t\t\tparents: [],\n\t\t\t\t\t\t\t\tsearch: '',\n\t\t\t\t\t\t\t\ttaxQuery: null,\n\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\tsetQuerySearch( '' );\n\t\t\t\t\t\t} }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ showTaxControl && (\n\t\t\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\t\t\tlabel={ __( 'Taxonomies' ) }\n\t\t\t\t\t\t\t\thasValue={ () =>\n\t\t\t\t\t\t\t\t\tObject.values( taxQuery || {} ).some(\n\t\t\t\t\t\t\t\t\t\t( terms ) => !! terms.length\n\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\t\t\t\tsetQuery( { taxQuery: null } )\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<TaxonomyControls\n\t\t\t\t\t\t\t\t\tonChange={ setQuery }\n\t\t\t\t\t\t\t\t\tquery={ query }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</ToolsPanelItem>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ showAuthorControl && (\n\t\t\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\t\t\thasValue={ () => !! authorIds }\n\t\t\t\t\t\t\t\tlabel={ __( 'Authors' ) }\n\t\t\t\t\t\t\t\tonDeselect={ () => setQuery( { author: '' } ) }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<AuthorControl\n\t\t\t\t\t\t\t\t\tvalue={ authorIds }\n\t\t\t\t\t\t\t\t\tonChange={ setQuery }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</ToolsPanelItem>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ showSearchControl && (\n\t\t\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\t\t\thasValue={ () => !! querySearch }\n\t\t\t\t\t\t\t\tlabel={ __( 'Keyword' ) }\n\t\t\t\t\t\t\t\tonDeselect={ () => setQuerySearch( '' ) }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<TextControl\n\t\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Keyword' ) }\n\t\t\t\t\t\t\t\t\tvalue={ querySearch }\n\t\t\t\t\t\t\t\t\tonChange={ setQuerySearch }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</ToolsPanelItem>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ showParentControl && (\n\t\t\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\t\t\thasValue={ () => !! parents?.length }\n\t\t\t\t\t\t\t\tlabel={ __( 'Parents' ) }\n\t\t\t\t\t\t\t\tonDeselect={ () => setQuery( { parents: [] } ) }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<ParentControl\n\t\t\t\t\t\t\t\t\tparents={ parents }\n\t\t\t\t\t\t\t\t\tpostType={ postType }\n\t\t\t\t\t\t\t\t\tonChange={ setQuery }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</ToolsPanelItem>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</ToolsPanel>\n\t\t\t\t</InspectorControls>\n\t\t\t) }\n\t\t</>\n\t);\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/query/edit/inspector-controls/index.js"],"names":["PanelBody","TextControl","SelectControl","RangeControl","ToggleControl","Notice","__experimentalToolsPanel","ToolsPanel","__experimentalToolsPanelItem","ToolsPanelItem","__","InspectorControls","debounce","useEffect","useState","useCallback","OrderControl","AuthorControl","ParentControl","TaxonomyControls","StickyControl","usePostTypes","useIsPostTypeHierarchical","useAllowedControls","isControlAllowed","useTaxonomies","QueryInspectorControls","attributes","setQuery","setDisplayLayout","query","displayLayout","order","orderBy","author","authorIds","postType","sticky","inherit","taxQuery","parents","allowedControls","showSticky","setShowSticky","postTypesTaxonomiesMap","postTypesSelectOptions","taxonomies","isPostTypeHierarchical","onPostTypeChange","newValue","updateQuery","supportedTaxonomies","updatedTaxQuery","Object","entries","reduce","accumulator","taxonomySlug","terms","includes","keys","length","undefined","querySearch","setQuerySearch","search","onChangeDebounced","cancel","showInheritControl","showPostTypeControl","showColumnsControl","type","showOrderControl","showStickyControl","showSettingsPanel","showTaxControl","showAuthorControl","showSearchControl","showParentControl","showFiltersPanel","value","columns","Math","max","values","some"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tPanelBody,\n\tTextControl,\n\tSelectControl,\n\tRangeControl,\n\tToggleControl,\n\tNotice,\n\t__experimentalToolsPanel as ToolsPanel,\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { InspectorControls } from '@wordpress/block-editor';\nimport { debounce } from '@wordpress/compose';\nimport { useEffect, useState, useCallback } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport OrderControl from './order-control';\nimport AuthorControl from './author-control';\nimport ParentControl from './parent-control';\nimport { TaxonomyControls } from './taxonomy-controls';\nimport StickyControl from './sticky-control';\nimport {\n\tusePostTypes,\n\tuseIsPostTypeHierarchical,\n\tuseAllowedControls,\n\tisControlAllowed,\n\tuseTaxonomies,\n} from '../../utils';\n\nexport default function QueryInspectorControls( {\n\tattributes,\n\tsetQuery,\n\tsetDisplayLayout,\n} ) {\n\tconst { query, displayLayout } = attributes;\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\tparents,\n\t} = query;\n\tconst allowedControls = useAllowedControls( attributes );\n\tconst [ showSticky, setShowSticky ] = useState( postType === 'post' );\n\tconst { postTypesTaxonomiesMap, postTypesSelectOptions } = usePostTypes();\n\tconst taxonomies = useTaxonomies( postType );\n\tconst isPostTypeHierarchical = useIsPostTypeHierarchical( postType );\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\t// We need to reset `parents` because they are tied to each post type.\n\t\tupdateQuery.parents = [];\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\tconst showInheritControl = isControlAllowed( allowedControls, 'inherit' );\n\tconst showPostTypeControl =\n\t\t! inherit && isControlAllowed( allowedControls, 'postType' );\n\tconst showColumnsControl = displayLayout?.type === 'flex';\n\tconst showOrderControl =\n\t\t! inherit && isControlAllowed( allowedControls, 'order' );\n\tconst showStickyControl =\n\t\t! inherit &&\n\t\tshowSticky &&\n\t\tisControlAllowed( allowedControls, 'sticky' );\n\tconst showSettingsPanel =\n\t\tshowInheritControl ||\n\t\tshowPostTypeControl ||\n\t\tshowColumnsControl ||\n\t\tshowOrderControl ||\n\t\tshowStickyControl;\n\tconst showTaxControl =\n\t\t!! taxonomies?.length &&\n\t\tisControlAllowed( allowedControls, 'taxQuery' );\n\tconst showAuthorControl = isControlAllowed( allowedControls, 'author' );\n\tconst showSearchControl = isControlAllowed( allowedControls, 'search' );\n\tconst showParentControl =\n\t\tisControlAllowed( allowedControls, 'parents' ) &&\n\t\tisPostTypeHierarchical;\n\n\tconst showFiltersPanel =\n\t\tshowTaxControl ||\n\t\tshowAuthorControl ||\n\t\tshowSearchControl ||\n\t\tshowParentControl;\n\n\treturn (\n\t\t<>\n\t\t\t{ showSettingsPanel && (\n\t\t\t\t<InspectorControls>\n\t\t\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t\t\t{ showInheritControl && (\n\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\tlabel={ __( 'Inherit query from template' ) }\n\t\t\t\t\t\t\t\thelp={ __(\n\t\t\t\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\t\t\t) }\n\t\t\t\t\t\t\t\tchecked={ !! inherit }\n\t\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\t\tsetQuery( { inherit: !! value } )\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ showPostTypeControl && (\n\t\t\t\t\t\t\t<SelectControl\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\toptions={ postTypesSelectOptions }\n\t\t\t\t\t\t\t\tvalue={ postType }\n\t\t\t\t\t\t\t\tlabel={ __( 'Post type' ) }\n\t\t\t\t\t\t\t\tonChange={ onPostTypeChange }\n\t\t\t\t\t\t\t\thelp={ __(\n\t\t\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\t\t) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ showColumnsControl && (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t<RangeControl\n\t\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Columns' ) }\n\t\t\t\t\t\t\t\t\tvalue={ displayLayout.columns }\n\t\t\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\t\t\tsetDisplayLayout( { columns: value } )\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tmin={ 2 }\n\t\t\t\t\t\t\t\t\tmax={ Math.max( 6, displayLayout.columns ) }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t{ displayLayout.columns > 6 && (\n\t\t\t\t\t\t\t\t\t<Notice\n\t\t\t\t\t\t\t\t\t\tstatus=\"warning\"\n\t\t\t\t\t\t\t\t\t\tisDismissible={ false }\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{ __(\n\t\t\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\t\t) }\n\t\t\t\t\t\t\t\t\t</Notice>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ showOrderControl && (\n\t\t\t\t\t\t\t<OrderControl\n\t\t\t\t\t\t\t\t{ ...{ order, orderBy } }\n\t\t\t\t\t\t\t\tonChange={ setQuery }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ showStickyControl && (\n\t\t\t\t\t\t\t<StickyControl\n\t\t\t\t\t\t\t\tvalue={ sticky }\n\t\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\t\tsetQuery( { sticky: value } )\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</PanelBody>\n\t\t\t\t</InspectorControls>\n\t\t\t) }\n\t\t\t{ ! inherit && showFiltersPanel && (\n\t\t\t\t<InspectorControls>\n\t\t\t\t\t<ToolsPanel\n\t\t\t\t\t\tclassName=\"block-library-query-toolspanel__filters\"\n\t\t\t\t\t\tlabel={ __( 'Filters' ) }\n\t\t\t\t\t\tresetAll={ () => {\n\t\t\t\t\t\t\tsetQuery( {\n\t\t\t\t\t\t\t\tauthor: '',\n\t\t\t\t\t\t\t\tparents: [],\n\t\t\t\t\t\t\t\tsearch: '',\n\t\t\t\t\t\t\t\ttaxQuery: null,\n\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\tsetQuerySearch( '' );\n\t\t\t\t\t\t} }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ showTaxControl && (\n\t\t\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\t\t\tlabel={ __( 'Taxonomies' ) }\n\t\t\t\t\t\t\t\thasValue={ () =>\n\t\t\t\t\t\t\t\t\tObject.values( taxQuery || {} ).some(\n\t\t\t\t\t\t\t\t\t\t( terms ) => !! terms.length\n\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\t\t\t\tsetQuery( { taxQuery: null } )\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<TaxonomyControls\n\t\t\t\t\t\t\t\t\tonChange={ setQuery }\n\t\t\t\t\t\t\t\t\tquery={ query }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</ToolsPanelItem>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ showAuthorControl && (\n\t\t\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\t\t\thasValue={ () => !! authorIds }\n\t\t\t\t\t\t\t\tlabel={ __( 'Authors' ) }\n\t\t\t\t\t\t\t\tonDeselect={ () => setQuery( { author: '' } ) }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<AuthorControl\n\t\t\t\t\t\t\t\t\tvalue={ authorIds }\n\t\t\t\t\t\t\t\t\tonChange={ setQuery }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</ToolsPanelItem>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ showSearchControl && (\n\t\t\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\t\t\thasValue={ () => !! querySearch }\n\t\t\t\t\t\t\t\tlabel={ __( 'Keyword' ) }\n\t\t\t\t\t\t\t\tonDeselect={ () => setQuerySearch( '' ) }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<TextControl\n\t\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Keyword' ) }\n\t\t\t\t\t\t\t\t\tvalue={ querySearch }\n\t\t\t\t\t\t\t\t\tonChange={ setQuerySearch }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</ToolsPanelItem>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ showParentControl && (\n\t\t\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\t\t\thasValue={ () => !! parents?.length }\n\t\t\t\t\t\t\t\tlabel={ __( 'Parents' ) }\n\t\t\t\t\t\t\t\tonDeselect={ () => setQuery( { parents: [] } ) }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<ParentControl\n\t\t\t\t\t\t\t\t\tparents={ parents }\n\t\t\t\t\t\t\t\t\tpostType={ postType }\n\t\t\t\t\t\t\t\t\tonChange={ setQuery }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</ToolsPanelItem>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</ToolsPanel>\n\t\t\t\t</InspectorControls>\n\t\t\t) }\n\t\t</>\n\t);\n}\n"]}
|
|
@@ -13,7 +13,7 @@ import { __ } from '@wordpress/i18n';
|
|
|
13
13
|
* Internal dependencies
|
|
14
14
|
*/
|
|
15
15
|
|
|
16
|
-
import { useScopedBlockVariations } from '../utils';
|
|
16
|
+
import { useScopedBlockVariations, useBlockNameForPatterns } from '../utils';
|
|
17
17
|
export default function QueryPlaceholder(_ref) {
|
|
18
18
|
var _matchingVariation$ic, _blockType$icon;
|
|
19
19
|
|
|
@@ -26,6 +26,7 @@ export default function QueryPlaceholder(_ref) {
|
|
|
26
26
|
} = _ref;
|
|
27
27
|
const [isStartingBlank, setIsStartingBlank] = useState(false);
|
|
28
28
|
const blockProps = useBlockProps();
|
|
29
|
+
const blockNameForPatterns = useBlockNameForPatterns(clientId, attributes);
|
|
29
30
|
const {
|
|
30
31
|
blockType,
|
|
31
32
|
allVariations,
|
|
@@ -43,9 +44,9 @@ export default function QueryPlaceholder(_ref) {
|
|
|
43
44
|
return {
|
|
44
45
|
blockType: getBlockType(name),
|
|
45
46
|
allVariations: getBlockVariations(name),
|
|
46
|
-
hasPatterns: !!getPatternsByBlockTypes(
|
|
47
|
+
hasPatterns: !!getPatternsByBlockTypes(blockNameForPatterns, rootClientId).length
|
|
47
48
|
};
|
|
48
|
-
}, [name, clientId]);
|
|
49
|
+
}, [name, blockNameForPatterns, clientId]);
|
|
49
50
|
const matchingVariation = getMatchingVariation(attributes, allVariations);
|
|
50
51
|
const icon = (matchingVariation === null || matchingVariation === void 0 ? void 0 : (_matchingVariation$ic = matchingVariation.icon) === null || _matchingVariation$ic === void 0 ? void 0 : _matchingVariation$ic.src) || (matchingVariation === null || matchingVariation === void 0 ? void 0 : matchingVariation.icon) || (blockType === null || blockType === void 0 ? void 0 : (_blockType$icon = blockType.icon) === null || _blockType$icon === void 0 ? void 0 : _blockType$icon.src);
|
|
51
52
|
const label = (matchingVariation === null || matchingVariation === void 0 ? void 0 : matchingVariation.title) || (blockType === null || blockType === void 0 ? void 0 : blockType.title);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/block-library/src/query/edit/query-placeholder.js"],"names":["useSelect","useDispatch","createBlocksFromInnerBlocksTemplate","store","blocksStore","useState","useBlockProps","blockEditorStore","__experimentalBlockVariationPicker","__experimentalGetMatchingVariation","getMatchingVariation","Button","Placeholder","__","useScopedBlockVariations","QueryPlaceholder","attributes","clientId","name","openPatternSelectionModal","setAttributes","isStartingBlank","setIsStartingBlank","blockProps","blockType","allVariations","hasPatterns","select","getBlockVariations","getBlockType","getBlockRootClientId","getPatternsByBlockTypes","rootClientId","length","matchingVariation","icon","src","label","title","QueryVariationPicker","scopeVariations","replaceInnerBlocks","variation","query","postType","namespace","innerBlocks"],"mappings":";;AAAA;AACA;AACA;AACA,SAASA,SAAT,EAAoBC,WAApB,QAAuC,iBAAvC;AACA,SACCC,mCADD,EAECC,KAAK,IAAIC,WAFV,QAGO,mBAHP;AAIA,SAASC,QAAT,QAAyB,oBAAzB;AACA,SACCC,aADD,EAECH,KAAK,IAAII,gBAFV,EAGCC,kCAHD,EAICC,kCAAkC,IAAIC,oBAJvC,QAKO,yBALP;AAMA,SAASC,MAAT,EAAiBC,WAAjB,QAAoC,uBAApC;AACA,SAASC,EAAT,QAAmB,iBAAnB;AAEA;AACA;AACA;;AACA,SAASC,wBAAT,
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/query/edit/query-placeholder.js"],"names":["useSelect","useDispatch","createBlocksFromInnerBlocksTemplate","store","blocksStore","useState","useBlockProps","blockEditorStore","__experimentalBlockVariationPicker","__experimentalGetMatchingVariation","getMatchingVariation","Button","Placeholder","__","useScopedBlockVariations","useBlockNameForPatterns","QueryPlaceholder","attributes","clientId","name","openPatternSelectionModal","setAttributes","isStartingBlank","setIsStartingBlank","blockProps","blockNameForPatterns","blockType","allVariations","hasPatterns","select","getBlockVariations","getBlockType","getBlockRootClientId","getPatternsByBlockTypes","rootClientId","length","matchingVariation","icon","src","label","title","QueryVariationPicker","scopeVariations","replaceInnerBlocks","variation","query","postType","namespace","innerBlocks"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport {\n\tcreateBlocksFromInnerBlocksTemplate,\n\tstore as blocksStore,\n} from '@wordpress/blocks';\nimport { useState } from '@wordpress/element';\nimport {\n\tuseBlockProps,\n\tstore as blockEditorStore,\n\t__experimentalBlockVariationPicker,\n\t__experimentalGetMatchingVariation as getMatchingVariation,\n} from '@wordpress/block-editor';\nimport { Button, Placeholder } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport { useScopedBlockVariations, useBlockNameForPatterns } from '../utils';\n\nexport default function QueryPlaceholder( {\n\tattributes,\n\tclientId,\n\tname,\n\topenPatternSelectionModal,\n\tsetAttributes,\n} ) {\n\tconst [ isStartingBlank, setIsStartingBlank ] = useState( false );\n\tconst blockProps = useBlockProps();\n\tconst blockNameForPatterns = useBlockNameForPatterns(\n\t\tclientId,\n\t\tattributes\n\t);\n\n\tconst { blockType, allVariations, hasPatterns } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getBlockVariations, getBlockType } = select( blocksStore );\n\t\t\tconst { getBlockRootClientId, getPatternsByBlockTypes } =\n\t\t\t\tselect( blockEditorStore );\n\t\t\tconst rootClientId = getBlockRootClientId( clientId );\n\t\t\treturn {\n\t\t\t\tblockType: getBlockType( name ),\n\t\t\t\tallVariations: getBlockVariations( name ),\n\t\t\t\thasPatterns: !! getPatternsByBlockTypes(\n\t\t\t\t\tblockNameForPatterns,\n\t\t\t\t\trootClientId\n\t\t\t\t).length,\n\t\t\t};\n\t\t},\n\t\t[ name, blockNameForPatterns, clientId ]\n\t);\n\n\tconst matchingVariation = getMatchingVariation( attributes, allVariations );\n\tconst icon =\n\t\tmatchingVariation?.icon?.src ||\n\t\tmatchingVariation?.icon ||\n\t\tblockType?.icon?.src;\n\tconst label = matchingVariation?.title || blockType?.title;\n\tif ( isStartingBlank ) {\n\t\treturn (\n\t\t\t<QueryVariationPicker\n\t\t\t\tclientId={ clientId }\n\t\t\t\tattributes={ attributes }\n\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\ticon={ icon }\n\t\t\t\tlabel={ label }\n\t\t\t/>\n\t\t);\n\t}\n\treturn (\n\t\t<div { ...blockProps }>\n\t\t\t<Placeholder\n\t\t\t\ticon={ icon }\n\t\t\t\tlabel={ label }\n\t\t\t\tinstructions={ __(\n\t\t\t\t\t'Choose a pattern for the query loop or start blank.'\n\t\t\t\t) }\n\t\t\t>\n\t\t\t\t{ !! hasPatterns && (\n\t\t\t\t\t<Button\n\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\tonClick={ openPatternSelectionModal }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Choose' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t) }\n\n\t\t\t\t<Button\n\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\tsetIsStartingBlank( true );\n\t\t\t\t\t} }\n\t\t\t\t>\n\t\t\t\t\t{ __( 'Start blank' ) }\n\t\t\t\t</Button>\n\t\t\t</Placeholder>\n\t\t</div>\n\t);\n}\n\nfunction QueryVariationPicker( {\n\tclientId,\n\tattributes,\n\tsetAttributes,\n\ticon,\n\tlabel,\n} ) {\n\tconst scopeVariations = useScopedBlockVariations( attributes );\n\tconst { replaceInnerBlocks } = useDispatch( blockEditorStore );\n\tconst blockProps = useBlockProps();\n\treturn (\n\t\t<div { ...blockProps }>\n\t\t\t<__experimentalBlockVariationPicker\n\t\t\t\ticon={ icon }\n\t\t\t\tlabel={ label }\n\t\t\t\tvariations={ scopeVariations }\n\t\t\t\tonSelect={ ( variation ) => {\n\t\t\t\t\tif ( variation.attributes ) {\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t...variation.attributes,\n\t\t\t\t\t\t\tquery: {\n\t\t\t\t\t\t\t\t...variation.attributes.query,\n\t\t\t\t\t\t\t\tpostType:\n\t\t\t\t\t\t\t\t\tattributes.query.postType ||\n\t\t\t\t\t\t\t\t\tvariation.attributes.query.postType,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tnamespace: attributes.namespace,\n\t\t\t\t\t\t} );\n\t\t\t\t\t}\n\t\t\t\t\tif ( variation.innerBlocks ) {\n\t\t\t\t\t\treplaceInnerBlocks(\n\t\t\t\t\t\t\tclientId,\n\t\t\t\t\t\t\tcreateBlocksFromInnerBlocksTemplate(\n\t\t\t\t\t\t\t\tvariation.innerBlocks\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\tfalse\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t} }\n\t\t\t/>\n\t\t</div>\n\t);\n}\n"]}
|
|
@@ -1,11 +1,6 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* External dependencies
|
|
3
|
-
*/
|
|
4
|
-
import { get } from 'lodash';
|
|
5
1
|
/**
|
|
6
2
|
* WordPress dependencies
|
|
7
3
|
*/
|
|
8
|
-
|
|
9
4
|
import { useSelect } from '@wordpress/data';
|
|
10
5
|
import { useMemo } from '@wordpress/element';
|
|
11
6
|
import { store as coreStore } from '@wordpress/core-data';
|
|
@@ -124,6 +119,26 @@ export const getEntitiesInfo = entities => {
|
|
|
124
119
|
...mapping
|
|
125
120
|
};
|
|
126
121
|
};
|
|
122
|
+
/**
|
|
123
|
+
* Helper util to return a value from a certain path of the object.
|
|
124
|
+
* Path is specified as a string of properties, separated by dots,
|
|
125
|
+
* for example: "parent.child".
|
|
126
|
+
*
|
|
127
|
+
* @param {Object} object Input object.
|
|
128
|
+
* @param {string} path Path to the object property.
|
|
129
|
+
* @return {*} Value of the object property at the specified path.
|
|
130
|
+
*/
|
|
131
|
+
|
|
132
|
+
export const getValueFromObjectPath = (object, path) => {
|
|
133
|
+
const normalizedPath = path.split('.');
|
|
134
|
+
let value = object;
|
|
135
|
+
normalizedPath.forEach(fieldName => {
|
|
136
|
+
var _value;
|
|
137
|
+
|
|
138
|
+
value = (_value = value) === null || _value === void 0 ? void 0 : _value[fieldName];
|
|
139
|
+
});
|
|
140
|
+
return value;
|
|
141
|
+
};
|
|
127
142
|
/**
|
|
128
143
|
* Helper util to map records to add a `name` prop from a
|
|
129
144
|
* provided path, in order to handle all entities in the same
|
|
@@ -136,7 +151,7 @@ export const getEntitiesInfo = entities => {
|
|
|
136
151
|
|
|
137
152
|
export const mapToIHasNameAndId = (entities, path) => {
|
|
138
153
|
return (entities || []).map(entity => ({ ...entity,
|
|
139
|
-
name: decodeEntities(
|
|
154
|
+
name: decodeEntities(getValueFromObjectPath(entity, path))
|
|
140
155
|
}));
|
|
141
156
|
};
|
|
142
157
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/block-library/src/query/utils.js"],"names":["get","useSelect","useMemo","store","coreStore","blockEditorStore","decodeEntities","cloneBlock","blocksStore","getEntitiesInfo","entities","mapping","reduce","accumulator","entity","mapById","mapByName","names","id","name","push","mapToIHasNameAndId","path","map","usePostTypes","postTypes","select","getPostTypes","excludedPostTypes","filteredPostTypes","per_page","filter","viewable","slug","includes","postTypesTaxonomiesMap","length","type","taxonomies","postTypesSelectOptions","labels","label","singular_name","value","useTaxonomies","postType","getTaxonomies","filteredTaxonomies","context","useIsPostTypeHierarchical","getPostType","hierarchical","useAllowedControls","attributes","getActiveBlockVariation","queryLoopName","allowedControls","isControlAllowed","key","getTransformedBlocksFromPattern","blocks","queryBlockAttributes","query","inherit","clonedBlocks","block","queryClientIds","blocksQueue","shift","clientId","innerBlocks","forEach","innerBlock","newBlocks","useBlockNameForPatterns","activeVariationName","blockName","activeVariationPatterns","getBlockRootClientId","getPatternsByBlockTypes","rootClientId","useScopedBlockVariations","blockVariations","getBlockVariations","variations","isNotConnected","variation","namespace","connectedVariations","usePatterns"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { get } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { useSelect } from '@wordpress/data';\nimport { useMemo } from '@wordpress/element';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { cloneBlock, store as blocksStore } from '@wordpress/blocks';\n\n/**\n * Internal dependencies\n */\nimport { name as queryLoopName } from './block.json';\n\n/** @typedef {import('@wordpress/blocks').WPBlockVariation} WPBlockVariation */\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 * Helper util to map records to add a `name` prop from a\n * provided path, in order to handle all entities in the same\n * fashion(implementing`IHasNameAndId` interface).\n *\n * @param {Object[]} entities The array of entities.\n * @param {string} path The path to map a `name` property from the entity.\n * @return {IHasNameAndId[]} An array of enitities that now implement the `IHasNameAndId` interface.\n */\nexport const mapToIHasNameAndId = ( entities, path ) => {\n\treturn ( entities || [] ).map( ( entity ) => ( {\n\t\t...entity,\n\t\tname: decodeEntities( get( entity, path ) ),\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 * Hook that returns whether a specific post type is hierarchical.\n *\n * @param {string} postType The post type to check.\n * @return {boolean} Whether a specific post type is hierarchical.\n */\nexport function useIsPostTypeHierarchical( postType ) {\n\treturn useSelect(\n\t\t( select ) => {\n\t\t\tconst type = select( coreStore ).getPostType( postType );\n\t\t\treturn type?.viewable && type?.hierarchical;\n\t\t},\n\t\t[ postType ]\n\t);\n}\n\n/**\n * Hook that returns the query properties' names defined by the active\n * block variation, to determine which block's filters to show.\n *\n * @param {Object} attributes Block attributes.\n * @return {string[]} An array of the query attributes.\n */\nexport function useAllowedControls( attributes ) {\n\treturn useSelect(\n\t\t( select ) =>\n\t\t\tselect( blocksStore ).getActiveBlockVariation(\n\t\t\t\tqueryLoopName,\n\t\t\t\tattributes\n\t\t\t)?.allowedControls,\n\n\t\t[ attributes ]\n\t);\n}\nexport function isControlAllowed( allowedControls, key ) {\n\t// Every controls is allowed if the list is not defined.\n\tif ( ! allowedControls ) {\n\t\treturn true;\n\t}\n\treturn allowedControls.includes( key );\n}\n\n/**\n * Clones a pattern's blocks and then recurses over that list of blocks,\n * transforming them to retain some `query` attribute properties.\n * For now we retain the `postType` and `inherit` properties as they are\n * fundamental for the expected functionality of the block and don't affect\n * its design and presentation.\n *\n * Returns the cloned/transformed blocks and array of existing Query Loop\n * client ids for further manipulation, in order to avoid multiple recursions.\n *\n * @param {WPBlock[]} blocks The list of blocks to look through and transform(mutate).\n * @param {Record<string,*>} queryBlockAttributes The existing Query Loop's attributes.\n * @return {{ newBlocks: WPBlock[], queryClientIds: string[] }} An object with the cloned/transformed blocks and all the Query Loop clients from these blocks.\n */\nexport const getTransformedBlocksFromPattern = (\n\tblocks,\n\tqueryBlockAttributes\n) => {\n\tconst {\n\t\tquery: { postType, inherit },\n\t} = queryBlockAttributes;\n\tconst clonedBlocks = blocks.map( ( block ) => cloneBlock( block ) );\n\tconst queryClientIds = [];\n\tconst blocksQueue = [ ...clonedBlocks ];\n\twhile ( blocksQueue.length > 0 ) {\n\t\tconst block = blocksQueue.shift();\n\t\tif ( block.name === 'core/query' ) {\n\t\t\tblock.attributes.query = {\n\t\t\t\t...block.attributes.query,\n\t\t\t\tpostType,\n\t\t\t\tinherit,\n\t\t\t};\n\t\t\tqueryClientIds.push( block.clientId );\n\t\t}\n\t\tblock.innerBlocks?.forEach( ( innerBlock ) => {\n\t\t\tblocksQueue.push( innerBlock );\n\t\t} );\n\t}\n\treturn { newBlocks: clonedBlocks, queryClientIds };\n};\n\n/**\n * Helper hook that determines if there is an active variation of the block\n * and if there are available specific patterns for this variation.\n * If there are, these patterns are going to be the only ones suggested to\n * the user in setup and replace flow, without including the default ones\n * for Query Loop.\n *\n * If there are no such patterns, the default ones for Query Loop are going\n * to be suggested.\n *\n * @param {string} clientId The block's client ID.\n * @param {Object} attributes The block's attributes.\n * @return {string} The block name to be used in the patterns suggestions.\n */\nexport function useBlockNameForPatterns( clientId, attributes ) {\n\tconst activeVariationName = useSelect(\n\t\t( select ) =>\n\t\t\tselect( blocksStore ).getActiveBlockVariation(\n\t\t\t\tqueryLoopName,\n\t\t\t\tattributes\n\t\t\t)?.name,\n\t\t[ attributes ]\n\t);\n\tconst blockName = `${ queryLoopName }/${ activeVariationName }`;\n\tconst activeVariationPatterns = useSelect(\n\t\t( select ) => {\n\t\t\tif ( ! activeVariationName ) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tconst { getBlockRootClientId, getPatternsByBlockTypes } =\n\t\t\t\tselect( blockEditorStore );\n\t\t\tconst rootClientId = getBlockRootClientId( clientId );\n\t\t\treturn getPatternsByBlockTypes( blockName, rootClientId );\n\t\t},\n\t\t[ clientId, activeVariationName ]\n\t);\n\treturn activeVariationPatterns?.length ? blockName : queryLoopName;\n}\n\n/**\n * Helper hook that determines if there is an active variation of the block\n * and if there are available specific scoped `block` variations connected with\n * this variation.\n *\n * If there are, these variations are going to be the only ones suggested\n * to the user in setup flow when clicking to `start blank`, without including\n * the default ones for Query Loop.\n *\n * If there are no such scoped `block` variations, the default ones for Query\n * Loop are going to be suggested.\n *\n * The way we determine such variations is with the convention that they have the `namespace`\n * attribute defined as an array. This array should contain the names(`name` property) of any\n * variations they want to be connected to.\n * For example, if we have a `Query Loop` scoped `inserter` variation with the name `products`,\n * we can connect a scoped `block` variation by setting its `namespace` attribute to `['products']`.\n * If the user selects this variation, the `namespace` attribute will be overridden by the\n * main `inserter` variation.\n *\n * @param {Object} attributes The block's attributes.\n * @return {WPBlockVariation[]} The block variations to be suggested in setup flow, when clicking to `start blank`.\n */\nexport function useScopedBlockVariations( attributes ) {\n\tconst { activeVariationName, blockVariations } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getActiveBlockVariation, getBlockVariations } =\n\t\t\t\tselect( blocksStore );\n\t\t\treturn {\n\t\t\t\tactiveVariationName: getActiveBlockVariation(\n\t\t\t\t\tqueryLoopName,\n\t\t\t\t\tattributes\n\t\t\t\t)?.name,\n\t\t\t\tblockVariations: getBlockVariations( queryLoopName, 'block' ),\n\t\t\t};\n\t\t},\n\t\t[ attributes ]\n\t);\n\tconst variations = useMemo( () => {\n\t\t// Filter out the variations that have defined a `namespace` attribute,\n\t\t// which means they are 'connected' to specific variations of the block.\n\t\tconst isNotConnected = ( variation ) =>\n\t\t\t! variation.attributes?.namespace;\n\t\tif ( ! activeVariationName ) {\n\t\t\treturn blockVariations.filter( isNotConnected );\n\t\t}\n\t\tconst connectedVariations = blockVariations.filter( ( variation ) =>\n\t\t\tvariation.attributes?.namespace?.includes( activeVariationName )\n\t\t);\n\t\tif ( !! connectedVariations.length ) {\n\t\t\treturn connectedVariations;\n\t\t}\n\t\treturn blockVariations.filter( isNotConnected );\n\t}, [ activeVariationName, blockVariations ] );\n\treturn variations;\n}\n\n/**\n * Hook that returns the block patterns for a specific block type.\n *\n * @param {string} clientId The block's client ID.\n * @param {string} name The block type name.\n * @return {Object[]} An array of valid block patterns.\n */\nexport const usePatterns = ( clientId, name ) => {\n\treturn useSelect(\n\t\t( select ) => {\n\t\t\tconst { getBlockRootClientId, getPatternsByBlockTypes } =\n\t\t\t\tselect( blockEditorStore );\n\t\t\tconst rootClientId = getBlockRootClientId( clientId );\n\t\t\treturn getPatternsByBlockTypes( name, rootClientId );\n\t\t},\n\t\t[ name, clientId ]\n\t);\n};\n"]}
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/query/utils.js"],"names":["useSelect","useMemo","store","coreStore","blockEditorStore","decodeEntities","cloneBlock","blocksStore","getEntitiesInfo","entities","mapping","reduce","accumulator","entity","mapById","mapByName","names","id","name","push","getValueFromObjectPath","object","path","normalizedPath","split","value","forEach","fieldName","mapToIHasNameAndId","map","usePostTypes","postTypes","select","getPostTypes","excludedPostTypes","filteredPostTypes","per_page","filter","viewable","slug","includes","postTypesTaxonomiesMap","length","type","taxonomies","postTypesSelectOptions","labels","label","singular_name","useTaxonomies","postType","getTaxonomies","filteredTaxonomies","context","useIsPostTypeHierarchical","getPostType","hierarchical","useAllowedControls","attributes","getActiveBlockVariation","queryLoopName","allowedControls","isControlAllowed","key","getTransformedBlocksFromPattern","blocks","queryBlockAttributes","query","inherit","clonedBlocks","block","queryClientIds","blocksQueue","shift","clientId","innerBlocks","innerBlock","newBlocks","useBlockNameForPatterns","activeVariationName","blockName","activeVariationPatterns","getBlockRootClientId","getPatternsByBlockTypes","rootClientId","useScopedBlockVariations","blockVariations","getBlockVariations","variations","isNotConnected","variation","namespace","connectedVariations","usePatterns"],"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';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { cloneBlock, store as blocksStore } from '@wordpress/blocks';\n\n/**\n * Internal dependencies\n */\nimport { name as queryLoopName } from './block.json';\n\n/** @typedef {import('@wordpress/blocks').WPBlockVariation} WPBlockVariation */\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 * Helper util to return a value from a certain path of the object.\n * Path is specified as a string of properties, separated by dots,\n * for example: \"parent.child\".\n *\n * @param {Object} object Input object.\n * @param {string} path Path to the object property.\n * @return {*} Value of the object property at the specified path.\n */\nexport const getValueFromObjectPath = ( object, path ) => {\n\tconst normalizedPath = path.split( '.' );\n\tlet value = object;\n\tnormalizedPath.forEach( ( fieldName ) => {\n\t\tvalue = value?.[ fieldName ];\n\t} );\n\treturn value;\n};\n\n/**\n * Helper util to map records to add a `name` prop from a\n * provided path, in order to handle all entities in the same\n * fashion(implementing`IHasNameAndId` interface).\n *\n * @param {Object[]} entities The array of entities.\n * @param {string} path The path to map a `name` property from the entity.\n * @return {IHasNameAndId[]} An array of enitities that now implement the `IHasNameAndId` interface.\n */\nexport const mapToIHasNameAndId = ( entities, path ) => {\n\treturn ( entities || [] ).map( ( entity ) => ( {\n\t\t...entity,\n\t\tname: decodeEntities( getValueFromObjectPath( entity, path ) ),\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 * Hook that returns whether a specific post type is hierarchical.\n *\n * @param {string} postType The post type to check.\n * @return {boolean} Whether a specific post type is hierarchical.\n */\nexport function useIsPostTypeHierarchical( postType ) {\n\treturn useSelect(\n\t\t( select ) => {\n\t\t\tconst type = select( coreStore ).getPostType( postType );\n\t\t\treturn type?.viewable && type?.hierarchical;\n\t\t},\n\t\t[ postType ]\n\t);\n}\n\n/**\n * Hook that returns the query properties' names defined by the active\n * block variation, to determine which block's filters to show.\n *\n * @param {Object} attributes Block attributes.\n * @return {string[]} An array of the query attributes.\n */\nexport function useAllowedControls( attributes ) {\n\treturn useSelect(\n\t\t( select ) =>\n\t\t\tselect( blocksStore ).getActiveBlockVariation(\n\t\t\t\tqueryLoopName,\n\t\t\t\tattributes\n\t\t\t)?.allowedControls,\n\n\t\t[ attributes ]\n\t);\n}\nexport function isControlAllowed( allowedControls, key ) {\n\t// Every controls is allowed if the list is not defined.\n\tif ( ! allowedControls ) {\n\t\treturn true;\n\t}\n\treturn allowedControls.includes( key );\n}\n\n/**\n * Clones a pattern's blocks and then recurses over that list of blocks,\n * transforming them to retain some `query` attribute properties.\n * For now we retain the `postType` and `inherit` properties as they are\n * fundamental for the expected functionality of the block and don't affect\n * its design and presentation.\n *\n * Returns the cloned/transformed blocks and array of existing Query Loop\n * client ids for further manipulation, in order to avoid multiple recursions.\n *\n * @param {WPBlock[]} blocks The list of blocks to look through and transform(mutate).\n * @param {Record<string,*>} queryBlockAttributes The existing Query Loop's attributes.\n * @return {{ newBlocks: WPBlock[], queryClientIds: string[] }} An object with the cloned/transformed blocks and all the Query Loop clients from these blocks.\n */\nexport const getTransformedBlocksFromPattern = (\n\tblocks,\n\tqueryBlockAttributes\n) => {\n\tconst {\n\t\tquery: { postType, inherit },\n\t} = queryBlockAttributes;\n\tconst clonedBlocks = blocks.map( ( block ) => cloneBlock( block ) );\n\tconst queryClientIds = [];\n\tconst blocksQueue = [ ...clonedBlocks ];\n\twhile ( blocksQueue.length > 0 ) {\n\t\tconst block = blocksQueue.shift();\n\t\tif ( block.name === 'core/query' ) {\n\t\t\tblock.attributes.query = {\n\t\t\t\t...block.attributes.query,\n\t\t\t\tpostType,\n\t\t\t\tinherit,\n\t\t\t};\n\t\t\tqueryClientIds.push( block.clientId );\n\t\t}\n\t\tblock.innerBlocks?.forEach( ( innerBlock ) => {\n\t\t\tblocksQueue.push( innerBlock );\n\t\t} );\n\t}\n\treturn { newBlocks: clonedBlocks, queryClientIds };\n};\n\n/**\n * Helper hook that determines if there is an active variation of the block\n * and if there are available specific patterns for this variation.\n * If there are, these patterns are going to be the only ones suggested to\n * the user in setup and replace flow, without including the default ones\n * for Query Loop.\n *\n * If there are no such patterns, the default ones for Query Loop are going\n * to be suggested.\n *\n * @param {string} clientId The block's client ID.\n * @param {Object} attributes The block's attributes.\n * @return {string} The block name to be used in the patterns suggestions.\n */\nexport function useBlockNameForPatterns( clientId, attributes ) {\n\tconst activeVariationName = useSelect(\n\t\t( select ) =>\n\t\t\tselect( blocksStore ).getActiveBlockVariation(\n\t\t\t\tqueryLoopName,\n\t\t\t\tattributes\n\t\t\t)?.name,\n\t\t[ attributes ]\n\t);\n\tconst blockName = `${ queryLoopName }/${ activeVariationName }`;\n\tconst activeVariationPatterns = useSelect(\n\t\t( select ) => {\n\t\t\tif ( ! activeVariationName ) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tconst { getBlockRootClientId, getPatternsByBlockTypes } =\n\t\t\t\tselect( blockEditorStore );\n\t\t\tconst rootClientId = getBlockRootClientId( clientId );\n\t\t\treturn getPatternsByBlockTypes( blockName, rootClientId );\n\t\t},\n\t\t[ clientId, activeVariationName ]\n\t);\n\treturn activeVariationPatterns?.length ? blockName : queryLoopName;\n}\n\n/**\n * Helper hook that determines if there is an active variation of the block\n * and if there are available specific scoped `block` variations connected with\n * this variation.\n *\n * If there are, these variations are going to be the only ones suggested\n * to the user in setup flow when clicking to `start blank`, without including\n * the default ones for Query Loop.\n *\n * If there are no such scoped `block` variations, the default ones for Query\n * Loop are going to be suggested.\n *\n * The way we determine such variations is with the convention that they have the `namespace`\n * attribute defined as an array. This array should contain the names(`name` property) of any\n * variations they want to be connected to.\n * For example, if we have a `Query Loop` scoped `inserter` variation with the name `products`,\n * we can connect a scoped `block` variation by setting its `namespace` attribute to `['products']`.\n * If the user selects this variation, the `namespace` attribute will be overridden by the\n * main `inserter` variation.\n *\n * @param {Object} attributes The block's attributes.\n * @return {WPBlockVariation[]} The block variations to be suggested in setup flow, when clicking to `start blank`.\n */\nexport function useScopedBlockVariations( attributes ) {\n\tconst { activeVariationName, blockVariations } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getActiveBlockVariation, getBlockVariations } =\n\t\t\t\tselect( blocksStore );\n\t\t\treturn {\n\t\t\t\tactiveVariationName: getActiveBlockVariation(\n\t\t\t\t\tqueryLoopName,\n\t\t\t\t\tattributes\n\t\t\t\t)?.name,\n\t\t\t\tblockVariations: getBlockVariations( queryLoopName, 'block' ),\n\t\t\t};\n\t\t},\n\t\t[ attributes ]\n\t);\n\tconst variations = useMemo( () => {\n\t\t// Filter out the variations that have defined a `namespace` attribute,\n\t\t// which means they are 'connected' to specific variations of the block.\n\t\tconst isNotConnected = ( variation ) =>\n\t\t\t! variation.attributes?.namespace;\n\t\tif ( ! activeVariationName ) {\n\t\t\treturn blockVariations.filter( isNotConnected );\n\t\t}\n\t\tconst connectedVariations = blockVariations.filter( ( variation ) =>\n\t\t\tvariation.attributes?.namespace?.includes( activeVariationName )\n\t\t);\n\t\tif ( !! connectedVariations.length ) {\n\t\t\treturn connectedVariations;\n\t\t}\n\t\treturn blockVariations.filter( isNotConnected );\n\t}, [ activeVariationName, blockVariations ] );\n\treturn variations;\n}\n\n/**\n * Hook that returns the block patterns for a specific block type.\n *\n * @param {string} clientId The block's client ID.\n * @param {string} name The block type name.\n * @return {Object[]} An array of valid block patterns.\n */\nexport const usePatterns = ( clientId, name ) => {\n\treturn useSelect(\n\t\t( select ) => {\n\t\t\tconst { getBlockRootClientId, getPatternsByBlockTypes } =\n\t\t\t\tselect( blockEditorStore );\n\t\t\tconst rootClientId = getBlockRootClientId( clientId );\n\t\t\treturn getPatternsByBlockTypes( name, rootClientId );\n\t\t},\n\t\t[ name, clientId ]\n\t);\n};\n"]}
|
|
@@ -45,6 +45,7 @@ export default function QueryTitleEdit(_ref) {
|
|
|
45
45
|
titleElement = createElement(Fragment, null, createElement(InspectorControls, null, createElement(PanelBody, {
|
|
46
46
|
title: __('Settings')
|
|
47
47
|
}, createElement(ToggleControl, {
|
|
48
|
+
__nextHasNoMarginBottom: true,
|
|
48
49
|
label: __('Show archive type in title'),
|
|
49
50
|
onChange: () => setAttributes({
|
|
50
51
|
showPrefix: !showPrefix
|
|
@@ -57,6 +58,7 @@ export default function QueryTitleEdit(_ref) {
|
|
|
57
58
|
titleElement = createElement(Fragment, null, createElement(InspectorControls, null, createElement(PanelBody, {
|
|
58
59
|
title: __('Settings')
|
|
59
60
|
}, createElement(ToggleControl, {
|
|
61
|
+
__nextHasNoMarginBottom: true,
|
|
60
62
|
label: __('Show search term in title'),
|
|
61
63
|
onChange: () => setAttributes({
|
|
62
64
|
showSearchTerm: !showSearchTerm
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/block-library/src/query-title/edit.js"],"names":["classnames","AlignmentControl","BlockControls","InspectorControls","useBlockProps","Warning","ToggleControl","PanelBody","__","HeadingLevelDropdown","SUPPORTED_TYPES","QueryTitleEdit","attributes","type","level","textAlign","showPrefix","showSearchTerm","setAttributes","TagName","blockProps","className","includes","titleElement","newLevel","nextAlign"],"mappings":";;AAAA;AACA;AACA;AACA,OAAOA,UAAP,MAAuB,YAAvB;AAEA;AACA;AACA;;AACA,SACCC,gBADD,EAECC,aAFD,EAGCC,iBAHD,EAICC,aAJD,EAKCC,OALD,QAMO,yBANP;AAOA,SAASC,aAAT,EAAwBC,SAAxB,QAAyC,uBAAzC;AACA,SAASC,EAAT,QAAmB,iBAAnB;AAEA;AACA;AACA;;AACA,OAAOC,oBAAP,MAAiC,mCAAjC;AAEA,MAAMC,eAAe,GAAG,CAAE,SAAF,EAAa,QAAb,CAAxB;AAEA,eAAe,SAASC,cAAT,OAGX;AAAA,MAHoC;AACvCC,IAAAA,UAAU,EAAE;AAAEC,MAAAA,IAAF;AAAQC,MAAAA,KAAR;AAAeC,MAAAA,SAAf;AAA0BC,MAAAA,UAA1B;AAAsCC,MAAAA;AAAtC,KAD2B;AAEvCC,IAAAA;AAFuC,GAGpC;AACH,QAAMC,OAAO,GAAI,IAAIL,KAAO,EAA5B;AACA,QAAMM,UAAU,GAAGhB,aAAa,CAAE;AACjCiB,IAAAA,SAAS,EAAErB,UAAU,CAAE,mCAAF,EAAuC;AAC3D,OAAG,kBAAkBe,SAAW,EAAhC,GAAqCA;AADsB,KAAvC;AADY,GAAF,CAAhC;;AAMA,MAAK,CAAEL,eAAe,CAACY,QAAhB,CAA0BT,IAA1B,CAAP,EAA0C;AACzC,WACC,qBAAUO,UAAV,EACC,cAAC,OAAD,QAAWZ,EAAE,CAAE,iCAAF,CAAb,CADD,CADD;AAKA;;AAED,MAAIe,YAAJ;;AACA,MAAKV,IAAI,KAAK,SAAd,EAA0B;AACzBU,IAAAA,YAAY,GACX,8BACC,cAAC,iBAAD,QACC,cAAC,SAAD;AAAW,MAAA,KAAK,EAAGf,EAAE,CAAE,UAAF;AAArB,OACC,cAAC,aAAD;AACC,MAAA,KAAK,EAAGA,EAAE,CAAE,4BAAF,
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/query-title/edit.js"],"names":["classnames","AlignmentControl","BlockControls","InspectorControls","useBlockProps","Warning","ToggleControl","PanelBody","__","HeadingLevelDropdown","SUPPORTED_TYPES","QueryTitleEdit","attributes","type","level","textAlign","showPrefix","showSearchTerm","setAttributes","TagName","blockProps","className","includes","titleElement","newLevel","nextAlign"],"mappings":";;AAAA;AACA;AACA;AACA,OAAOA,UAAP,MAAuB,YAAvB;AAEA;AACA;AACA;;AACA,SACCC,gBADD,EAECC,aAFD,EAGCC,iBAHD,EAICC,aAJD,EAKCC,OALD,QAMO,yBANP;AAOA,SAASC,aAAT,EAAwBC,SAAxB,QAAyC,uBAAzC;AACA,SAASC,EAAT,QAAmB,iBAAnB;AAEA;AACA;AACA;;AACA,OAAOC,oBAAP,MAAiC,mCAAjC;AAEA,MAAMC,eAAe,GAAG,CAAE,SAAF,EAAa,QAAb,CAAxB;AAEA,eAAe,SAASC,cAAT,OAGX;AAAA,MAHoC;AACvCC,IAAAA,UAAU,EAAE;AAAEC,MAAAA,IAAF;AAAQC,MAAAA,KAAR;AAAeC,MAAAA,SAAf;AAA0BC,MAAAA,UAA1B;AAAsCC,MAAAA;AAAtC,KAD2B;AAEvCC,IAAAA;AAFuC,GAGpC;AACH,QAAMC,OAAO,GAAI,IAAIL,KAAO,EAA5B;AACA,QAAMM,UAAU,GAAGhB,aAAa,CAAE;AACjCiB,IAAAA,SAAS,EAAErB,UAAU,CAAE,mCAAF,EAAuC;AAC3D,OAAG,kBAAkBe,SAAW,EAAhC,GAAqCA;AADsB,KAAvC;AADY,GAAF,CAAhC;;AAMA,MAAK,CAAEL,eAAe,CAACY,QAAhB,CAA0BT,IAA1B,CAAP,EAA0C;AACzC,WACC,qBAAUO,UAAV,EACC,cAAC,OAAD,QAAWZ,EAAE,CAAE,iCAAF,CAAb,CADD,CADD;AAKA;;AAED,MAAIe,YAAJ;;AACA,MAAKV,IAAI,KAAK,SAAd,EAA0B;AACzBU,IAAAA,YAAY,GACX,8BACC,cAAC,iBAAD,QACC,cAAC,SAAD;AAAW,MAAA,KAAK,EAAGf,EAAE,CAAE,UAAF;AAArB,OACC,cAAC,aAAD;AACC,MAAA,uBAAuB,MADxB;AAEC,MAAA,KAAK,EAAGA,EAAE,CAAE,4BAAF,CAFX;AAGC,MAAA,QAAQ,EAAG,MACVU,aAAa,CAAE;AAAEF,QAAAA,UAAU,EAAE,CAAEA;AAAhB,OAAF,CAJf;AAMC,MAAA,OAAO,EAAGA;AANX,MADD,CADD,CADD,EAaC,cAAC,OAAD,EAAcI,UAAd,EACGJ,UAAU,GACTR,EAAE,CAAE,oBAAF,CADO,GAETA,EAAE,CAAE,eAAF,CAHN,CAbD,CADD;AAqBA;;AAED,MAAKK,IAAI,KAAK,QAAd,EAAyB;AACxBU,IAAAA,YAAY,GACX,8BACC,cAAC,iBAAD,QACC,cAAC,SAAD;AAAW,MAAA,KAAK,EAAGf,EAAE,CAAE,UAAF;AAArB,OACC,cAAC,aAAD;AACC,MAAA,uBAAuB,MADxB;AAEC,MAAA,KAAK,EAAGA,EAAE,CAAE,2BAAF,CAFX;AAGC,MAAA,QAAQ,EAAG,MACVU,aAAa,CAAE;AACdD,QAAAA,cAAc,EAAE,CAAEA;AADJ,OAAF,CAJf;AAQC,MAAA,OAAO,EAAGA;AARX,MADD,CADD,CADD,EAgBC,cAAC,OAAD,EAAcG,UAAd,EACGH,cAAc,GACbT,EAAE,CAAE,mCAAF,CADW,GAEbA,EAAE,CAAE,gBAAF,CAHN,CAhBD,CADD;AAwBA;;AAED,SACC,8BACC,cAAC,aAAD;AAAe,IAAA,KAAK,EAAC;AAArB,KACC,cAAC,oBAAD;AACC,IAAA,aAAa,EAAGM,KADjB;AAEC,IAAA,QAAQ,EAAKU,QAAF,IACVN,aAAa,CAAE;AAAEJ,MAAAA,KAAK,EAAEU;AAAT,KAAF;AAHf,IADD,EAOC,cAAC,gBAAD;AACC,IAAA,KAAK,EAAGT,SADT;AAEC,IAAA,QAAQ,EAAKU,SAAF,IAAiB;AAC3BP,MAAAA,aAAa,CAAE;AAAEH,QAAAA,SAAS,EAAEU;AAAb,OAAF,CAAb;AACA;AAJF,IAPD,CADD,EAeGF,YAfH,CADD;AAmBA","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tAlignmentControl,\n\tBlockControls,\n\tInspectorControls,\n\tuseBlockProps,\n\tWarning,\n} from '@wordpress/block-editor';\nimport { ToggleControl, PanelBody } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport HeadingLevelDropdown from '../heading/heading-level-dropdown';\n\nconst SUPPORTED_TYPES = [ 'archive', 'search' ];\n\nexport default function QueryTitleEdit( {\n\tattributes: { type, level, textAlign, showPrefix, showSearchTerm },\n\tsetAttributes,\n} ) {\n\tconst TagName = `h${ level }`;\n\tconst blockProps = useBlockProps( {\n\t\tclassName: classnames( 'wp-block-query-title__placeholder', {\n\t\t\t[ `has-text-align-${ textAlign }` ]: textAlign,\n\t\t} ),\n\t} );\n\n\tif ( ! SUPPORTED_TYPES.includes( type ) ) {\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t<Warning>{ __( 'Provided type is not supported.' ) }</Warning>\n\t\t\t</div>\n\t\t);\n\t}\n\n\tlet titleElement;\n\tif ( type === 'archive' ) {\n\t\ttitleElement = (\n\t\t\t<>\n\t\t\t\t<InspectorControls>\n\t\t\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\tlabel={ __( 'Show archive type in title' ) }\n\t\t\t\t\t\t\tonChange={ () =>\n\t\t\t\t\t\t\t\tsetAttributes( { showPrefix: ! showPrefix } )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tchecked={ showPrefix }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</PanelBody>\n\t\t\t\t</InspectorControls>\n\t\t\t\t<TagName { ...blockProps }>\n\t\t\t\t\t{ showPrefix\n\t\t\t\t\t\t? __( 'Archive type: Name' )\n\t\t\t\t\t\t: __( 'Archive title' ) }\n\t\t\t\t</TagName>\n\t\t\t</>\n\t\t);\n\t}\n\n\tif ( type === 'search' ) {\n\t\ttitleElement = (\n\t\t\t<>\n\t\t\t\t<InspectorControls>\n\t\t\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\tlabel={ __( 'Show search term in title' ) }\n\t\t\t\t\t\t\tonChange={ () =>\n\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\tshowSearchTerm: ! showSearchTerm,\n\t\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tchecked={ showSearchTerm }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</PanelBody>\n\t\t\t\t</InspectorControls>\n\n\t\t\t\t<TagName { ...blockProps }>\n\t\t\t\t\t{ showSearchTerm\n\t\t\t\t\t\t? __( 'Search results for: “search term”' )\n\t\t\t\t\t\t: __( 'Search results' ) }\n\t\t\t\t</TagName>\n\t\t\t</>\n\t\t);\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<BlockControls group=\"block\">\n\t\t\t\t<HeadingLevelDropdown\n\t\t\t\t\tselectedLevel={ level }\n\t\t\t\t\tonChange={ ( newLevel ) =>\n\t\t\t\t\t\tsetAttributes( { level: newLevel } )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t\t<AlignmentControl\n\t\t\t\t\tvalue={ textAlign }\n\t\t\t\t\tonChange={ ( nextAlign ) => {\n\t\t\t\t\t\tsetAttributes( { textAlign: nextAlign } );\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t</BlockControls>\n\t\t\t{ titleElement }\n\t\t</>\n\t);\n}\n"]}
|
|
@@ -21,6 +21,7 @@ export default function ReadMore(_ref) {
|
|
|
21
21
|
return createElement(Fragment, null, createElement(InspectorControls, null, createElement(PanelBody, {
|
|
22
22
|
title: __('Link settings')
|
|
23
23
|
}, createElement(ToggleControl, {
|
|
24
|
+
__nextHasNoMarginBottom: true,
|
|
24
25
|
label: __('Open in new tab'),
|
|
25
26
|
onChange: value => setAttributes({
|
|
26
27
|
linkTarget: value ? '_blank' : '_self'
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/block-library/src/read-more/edit.js"],"names":["InspectorControls","RichText","useBlockProps","ToggleControl","PanelBody","createBlock","getDefaultBlockName","__","ReadMore","attributes","content","linkTarget","setAttributes","insertBlocksAfter","blockProps","value","newValue"],"mappings":";;;AAAA;AACA;AACA;AACA,SACCA,iBADD,EAECC,QAFD,EAGCC,aAHD,QAIO,yBAJP;AAKA,SAASC,aAAT,EAAwBC,SAAxB,QAAyC,uBAAzC;AACA,SAASC,WAAT,EAAsBC,mBAAtB,QAAiD,mBAAjD;AACA,SAASC,EAAT,QAAmB,iBAAnB;AAEA,eAAe,SAASC,QAAT,OAIX;AAAA,MAJ8B;AACjCC,IAAAA,UAAU,EAAE;AAAEC,MAAAA,OAAF;AAAWC,MAAAA;AAAX,KADqB;AAEjCC,IAAAA,aAFiC;AAGjCC,IAAAA;AAHiC,GAI9B;AACH,QAAMC,UAAU,GAAGZ,aAAa,EAAhC;AACA,SACC,8BACC,cAAC,iBAAD,QACC,cAAC,SAAD;AAAW,IAAA,KAAK,EAAGK,EAAE,CAAE,eAAF;AAArB,KACC,cAAC,aAAD;AACC,IAAA,KAAK,EAAGA,EAAE,CAAE,iBAAF,
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/read-more/edit.js"],"names":["InspectorControls","RichText","useBlockProps","ToggleControl","PanelBody","createBlock","getDefaultBlockName","__","ReadMore","attributes","content","linkTarget","setAttributes","insertBlocksAfter","blockProps","value","newValue"],"mappings":";;;AAAA;AACA;AACA;AACA,SACCA,iBADD,EAECC,QAFD,EAGCC,aAHD,QAIO,yBAJP;AAKA,SAASC,aAAT,EAAwBC,SAAxB,QAAyC,uBAAzC;AACA,SAASC,WAAT,EAAsBC,mBAAtB,QAAiD,mBAAjD;AACA,SAASC,EAAT,QAAmB,iBAAnB;AAEA,eAAe,SAASC,QAAT,OAIX;AAAA,MAJ8B;AACjCC,IAAAA,UAAU,EAAE;AAAEC,MAAAA,OAAF;AAAWC,MAAAA;AAAX,KADqB;AAEjCC,IAAAA,aAFiC;AAGjCC,IAAAA;AAHiC,GAI9B;AACH,QAAMC,UAAU,GAAGZ,aAAa,EAAhC;AACA,SACC,8BACC,cAAC,iBAAD,QACC,cAAC,SAAD;AAAW,IAAA,KAAK,EAAGK,EAAE,CAAE,eAAF;AAArB,KACC,cAAC,aAAD;AACC,IAAA,uBAAuB,MADxB;AAEC,IAAA,KAAK,EAAGA,EAAE,CAAE,iBAAF,CAFX;AAGC,IAAA,QAAQ,EAAKQ,KAAF,IACVH,aAAa,CAAE;AACdD,MAAAA,UAAU,EAAEI,KAAK,GAAG,QAAH,GAAc;AADjB,KAAF,CAJf;AAQC,IAAA,OAAO,EAAGJ,UAAU,KAAK;AAR1B,IADD,CADD,CADD,EAeC,cAAC,QAAD;AACC,IAAA,OAAO,EAAC,GADT;AAEC,kBAAaJ,EAAE,CAAE,uBAAF,CAFhB;AAGC,IAAA,WAAW,EAAGA,EAAE,CAAE,WAAF,CAHjB;AAIC,IAAA,KAAK,EAAGG,OAJT;AAKC,IAAA,QAAQ,EAAKM,QAAF,IACVJ,aAAa,CAAE;AAAEF,MAAAA,OAAO,EAAEM;AAAX,KAAF,CANf;AAQC,IAAA,sBAAsB,EAAG,MACxBH,iBAAiB,CAAER,WAAW,CAAEC,mBAAmB,EAArB,CAAb,CATnB;AAWC,IAAA,4BAA4B,EAAG;AAXhC,KAYMQ,UAZN,EAfD,CADD;AAgCA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tInspectorControls,\n\tRichText,\n\tuseBlockProps,\n} from '@wordpress/block-editor';\nimport { ToggleControl, PanelBody } from '@wordpress/components';\nimport { createBlock, getDefaultBlockName } from '@wordpress/blocks';\nimport { __ } from '@wordpress/i18n';\n\nexport default function ReadMore( {\n\tattributes: { content, linkTarget },\n\tsetAttributes,\n\tinsertBlocksAfter,\n} ) {\n\tconst blockProps = useBlockProps();\n\treturn (\n\t\t<>\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody title={ __( 'Link settings' ) }>\n\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Open in new tab' ) }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tlinkTarget: value ? '_blank' : '_self',\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tchecked={ linkTarget === '_blank' }\n\t\t\t\t\t/>\n\t\t\t\t</PanelBody>\n\t\t\t</InspectorControls>\n\t\t\t<RichText\n\t\t\t\ttagName=\"a\"\n\t\t\t\taria-label={ __( '“Read more” link text' ) }\n\t\t\t\tplaceholder={ __( 'Read more' ) }\n\t\t\t\tvalue={ content }\n\t\t\t\tonChange={ ( newValue ) =>\n\t\t\t\t\tsetAttributes( { content: newValue } )\n\t\t\t\t}\n\t\t\t\t__unstableOnSplitAtEnd={ () =>\n\t\t\t\t\tinsertBlocksAfter( createBlock( getDefaultBlockName() ) )\n\t\t\t\t}\n\t\t\t\twithoutInteractiveFormatting={ true }\n\t\t\t\t{ ...blockProps }\n\t\t\t/>\n\t\t</>\n\t);\n}\n"]}
|
package/build-module/rss/edit.js
CHANGED
|
@@ -108,14 +108,17 @@ export default function RSSEdit(_ref) {
|
|
|
108
108
|
max: DEFAULT_MAX_ITEMS,
|
|
109
109
|
required: true
|
|
110
110
|
}), createElement(ToggleControl, {
|
|
111
|
+
__nextHasNoMarginBottom: true,
|
|
111
112
|
label: __('Display author'),
|
|
112
113
|
checked: displayAuthor,
|
|
113
114
|
onChange: toggleAttribute('displayAuthor')
|
|
114
115
|
}), createElement(ToggleControl, {
|
|
116
|
+
__nextHasNoMarginBottom: true,
|
|
115
117
|
label: __('Display date'),
|
|
116
118
|
checked: displayDate,
|
|
117
119
|
onChange: toggleAttribute('displayDate')
|
|
118
120
|
}), createElement(ToggleControl, {
|
|
121
|
+
__nextHasNoMarginBottom: true,
|
|
119
122
|
label: __('Display excerpt'),
|
|
120
123
|
checked: displayExcerpt,
|
|
121
124
|
onChange: toggleAttribute('displayExcerpt')
|