@wordpress/block-library 8.34.0 → 8.35.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 +8 -3
- package/build/audio/edit.js +2 -2
- package/build/audio/edit.js.map +1 -1
- package/build/avatar/edit.js +2 -2
- package/build/avatar/edit.js.map +1 -1
- package/build/block/edit.js +23 -165
- package/build/block/edit.js.map +1 -1
- package/build/button/deprecated.js +16 -16
- package/build/button/deprecated.js.map +1 -1
- package/build/button/edit.js +3 -7
- package/build/button/edit.js.map +1 -1
- package/build/button/index.js +1 -0
- package/build/button/index.js.map +1 -1
- package/build/button/save.js +3 -3
- package/build/button/save.js.map +1 -1
- package/build/buttons/deprecated.js +2 -2
- package/build/buttons/deprecated.js.map +1 -1
- package/build/buttons/edit.js +2 -2
- package/build/buttons/edit.js.map +1 -1
- package/build/buttons/save.js +2 -2
- package/build/buttons/save.js.map +1 -1
- package/build/categories/edit.js +2 -2
- package/build/categories/edit.js.map +1 -1
- package/build/column/deprecated.js +2 -2
- package/build/column/deprecated.js.map +1 -1
- package/build/column/edit.js +2 -2
- package/build/column/edit.js.map +1 -1
- package/build/column/save.js +2 -2
- package/build/column/save.js.map +1 -1
- package/build/columns/deprecated.js +3 -3
- package/build/columns/deprecated.js.map +1 -1
- package/build/columns/edit.js +2 -2
- package/build/columns/edit.js.map +1 -1
- package/build/columns/save.js +2 -2
- package/build/columns/save.js.map +1 -1
- package/build/comment-author-name/edit.js +2 -2
- package/build/comment-author-name/edit.js.map +1 -1
- package/build/comment-content/edit.js +2 -2
- package/build/comment-content/edit.js.map +1 -1
- package/build/comment-edit-link/edit.js +2 -2
- package/build/comment-edit-link/edit.js.map +1 -1
- package/build/comment-reply-link/edit.js +2 -2
- package/build/comment-reply-link/edit.js.map +1 -1
- package/build/comments/edit/comments-legacy.js +2 -2
- package/build/comments/edit/comments-legacy.js.map +1 -1
- package/build/comments-title/edit.js +2 -2
- package/build/comments-title/edit.js.map +1 -1
- package/build/cover/deprecated.js +38 -38
- package/build/cover/deprecated.js.map +1 -1
- package/build/cover/edit/index.js +6 -6
- package/build/cover/edit/index.js.map +1 -1
- package/build/cover/edit/resizable-cover-popover.js +2 -2
- package/build/cover/edit/resizable-cover-popover.js.map +1 -1
- package/build/cover/edit.native.js +2 -2
- package/build/cover/edit.native.js.map +1 -1
- package/build/cover/save.js +5 -5
- package/build/cover/save.js.map +1 -1
- package/build/embed/deprecated.js +3 -3
- package/build/embed/deprecated.js.map +1 -1
- package/build/embed/edit.js +2 -2
- package/build/embed/edit.js.map +1 -1
- package/build/embed/edit.native.js +2 -2
- package/build/embed/edit.native.js.map +1 -1
- package/build/embed/embed-preview.js +3 -3
- package/build/embed/embed-preview.js.map +1 -1
- package/build/embed/embed-preview.native.js +2 -2
- package/build/embed/embed-preview.native.js.map +1 -1
- package/build/embed/icons.js +7 -1
- package/build/embed/icons.js.map +1 -1
- package/build/embed/save.js +2 -2
- package/build/embed/save.js.map +1 -1
- package/build/embed/util.js +10 -8
- package/build/embed/util.js.map +1 -1
- package/build/embed/variations.js +9 -0
- package/build/embed/variations.js.map +1 -1
- package/build/file/deprecated.js +2 -2
- package/build/file/deprecated.js.map +1 -1
- package/build/file/edit.js +3 -3
- package/build/file/edit.js.map +1 -1
- package/build/file/save.js +2 -2
- package/build/file/save.js.map +1 -1
- package/build/form-input/deprecated.js +3 -3
- package/build/form-input/deprecated.js.map +1 -1
- package/build/form-input/edit.js +4 -4
- package/build/form-input/edit.js.map +1 -1
- package/build/form-input/save.js +3 -3
- package/build/form-input/save.js.map +1 -1
- package/build/form-submission-notification/edit.js +2 -2
- package/build/form-submission-notification/edit.js.map +1 -1
- package/build/form-submission-notification/save.js +2 -2
- package/build/form-submission-notification/save.js.map +1 -1
- package/build/gallery/deprecated.js +3 -3
- package/build/gallery/deprecated.js.map +1 -1
- package/build/gallery/edit.js +2 -2
- package/build/gallery/edit.js.map +1 -1
- package/build/gallery/gallery.js +2 -2
- package/build/gallery/gallery.js.map +1 -1
- package/build/gallery/save.js +3 -3
- package/build/gallery/save.js.map +1 -1
- package/build/gallery/v1/gallery-image.js +2 -2
- package/build/gallery/v1/gallery-image.js.map +1 -1
- package/build/gallery/v1/gallery.js +3 -3
- package/build/gallery/v1/gallery.js.map +1 -1
- package/build/gallery/v1/save.js +3 -3
- package/build/gallery/v1/save.js.map +1 -1
- package/build/group/deprecated.js +4 -4
- package/build/group/deprecated.js.map +1 -1
- package/build/heading/deprecated.js +6 -6
- package/build/heading/deprecated.js.map +1 -1
- package/build/heading/edit.js +2 -19
- package/build/heading/edit.js.map +1 -1
- package/build/heading/edit.native.js +2 -2
- package/build/heading/edit.native.js.map +1 -1
- package/build/heading/index.js +1 -0
- package/build/heading/index.js.map +1 -1
- package/build/heading/save.js +2 -2
- package/build/heading/save.js.map +1 -1
- package/build/home-link/edit.js +2 -2
- package/build/home-link/edit.js.map +1 -1
- package/build/html/edit.js +0 -2
- package/build/html/edit.js.map +1 -1
- package/build/image/deprecated.js +10 -10
- package/build/image/deprecated.js.map +1 -1
- package/build/image/edit.js +7 -5
- package/build/image/edit.js.map +1 -1
- package/build/image/image.js +5 -3
- package/build/image/image.js.map +1 -1
- package/build/image/save.js +3 -3
- package/build/image/save.js.map +1 -1
- package/build/latest-posts/edit.js +5 -5
- package/build/latest-posts/edit.js.map +1 -1
- package/build/list/deprecated.js +90 -1
- package/build/list/deprecated.js.map +1 -1
- package/build/list/index.js +0 -2
- package/build/list/index.js.map +1 -1
- package/build/list-item/edit.js +1 -8
- package/build/list-item/edit.js.map +1 -1
- package/build/list-item/index.js +2 -1
- package/build/list-item/index.js.map +1 -1
- package/build/media-text/deprecated.js +10 -10
- package/build/media-text/deprecated.js.map +1 -1
- package/build/media-text/edit.js +2 -2
- package/build/media-text/edit.js.map +1 -1
- package/build/media-text/media-container.js +2 -2
- package/build/media-text/media-container.js.map +1 -1
- package/build/media-text/save.js +3 -3
- package/build/media-text/save.js.map +1 -1
- package/build/navigation/edit/index.js +3 -3
- package/build/navigation/edit/index.js.map +1 -1
- package/build/navigation/edit/responsive-wrapper.js +3 -3
- package/build/navigation/edit/responsive-wrapper.js.map +1 -1
- package/build/navigation/edit/utils.js +2 -2
- package/build/navigation/edit/utils.js.map +1 -1
- package/build/navigation-link/edit.js +3 -3
- package/build/navigation-link/edit.js.map +1 -1
- package/build/navigation-submenu/edit.js +2 -2
- package/build/navigation-submenu/edit.js.map +1 -1
- package/build/page-list/edit.js +2 -2
- package/build/page-list/edit.js.map +1 -1
- package/build/page-list-item/edit.js +3 -3
- package/build/page-list-item/edit.js.map +1 -1
- package/build/paragraph/deprecated.js +6 -6
- package/build/paragraph/deprecated.js.map +1 -1
- package/build/paragraph/edit.js +2 -18
- package/build/paragraph/edit.js.map +1 -1
- package/build/paragraph/index.js +1 -0
- package/build/paragraph/index.js.map +1 -1
- package/build/paragraph/save.js +2 -2
- package/build/paragraph/save.js.map +1 -1
- package/build/paragraph/transforms.js +1 -0
- package/build/paragraph/transforms.js.map +1 -1
- package/build/pattern/edit.js +1 -1
- package/build/pattern/edit.js.map +1 -1
- package/build/post-author/edit.js +2 -2
- package/build/post-author/edit.js.map +1 -1
- package/build/post-author-biography/edit.js +2 -2
- package/build/post-author-biography/edit.js.map +1 -1
- package/build/post-author-name/edit.js +2 -2
- package/build/post-author-name/edit.js.map +1 -1
- package/build/post-comments-count/edit.js +2 -2
- package/build/post-comments-count/edit.js.map +1 -1
- package/build/post-comments-form/edit.js +2 -2
- package/build/post-comments-form/edit.js.map +1 -1
- package/build/post-comments-form/form.js +2 -2
- package/build/post-comments-form/form.js.map +1 -1
- package/build/post-comments-link/edit.js +2 -2
- package/build/post-comments-link/edit.js.map +1 -1
- package/build/post-date/edit.js +2 -2
- package/build/post-date/edit.js.map +1 -1
- package/build/post-excerpt/edit.js +3 -3
- package/build/post-excerpt/edit.js.map +1 -1
- package/build/post-featured-image/dimension-controls.js +20 -28
- package/build/post-featured-image/dimension-controls.js.map +1 -1
- package/build/post-featured-image/edit.js +3 -3
- package/build/post-featured-image/edit.js.map +1 -1
- package/build/post-featured-image/overlay.js +2 -2
- package/build/post-featured-image/overlay.js.map +1 -1
- package/build/post-navigation-link/edit.js +2 -2
- package/build/post-navigation-link/edit.js.map +1 -1
- package/build/post-template/edit.js +6 -6
- package/build/post-template/edit.js.map +1 -1
- package/build/post-terms/edit.js +2 -2
- package/build/post-terms/edit.js.map +1 -1
- package/build/post-time-to-read/edit.js +3 -3
- package/build/post-time-to-read/edit.js.map +1 -1
- package/build/post-title/edit.js +2 -2
- package/build/post-title/edit.js.map +1 -1
- package/build/pullquote/deprecated.js +7 -7
- package/build/pullquote/deprecated.js.map +1 -1
- package/build/pullquote/edit.js +2 -2
- package/build/pullquote/edit.js.map +1 -1
- package/build/pullquote/save.js +2 -2
- package/build/pullquote/save.js.map +1 -1
- package/build/query-title/edit.js +2 -2
- package/build/query-title/edit.js.map +1 -1
- package/build/quote/deprecated.js +3 -3
- package/build/quote/deprecated.js.map +1 -1
- package/build/quote/edit.js +2 -2
- package/build/quote/edit.js.map +1 -1
- package/build/quote/save.js +2 -2
- package/build/quote/save.js.map +1 -1
- package/build/rss/edit.js +8 -6
- package/build/rss/edit.js.map +1 -1
- package/build/search/edit.js +6 -6
- package/build/search/edit.js.map +1 -1
- package/build/search/edit.native.js +2 -2
- package/build/search/edit.native.js.map +1 -1
- package/build/separator/deprecated.js +2 -2
- package/build/separator/deprecated.js.map +1 -1
- package/build/separator/edit.js +2 -2
- package/build/separator/edit.js.map +1 -1
- package/build/separator/save.js +2 -2
- package/build/separator/save.js.map +1 -1
- package/build/shortcode/edit.js +7 -10
- package/build/shortcode/edit.js.map +1 -1
- package/build/site-logo/edit.js +4 -4
- package/build/site-logo/edit.js.map +1 -1
- package/build/site-tagline/edit.js +2 -2
- package/build/site-tagline/edit.js.map +1 -1
- package/build/site-title/edit.js +2 -2
- package/build/site-title/edit.js.map +1 -1
- package/build/social-link/edit.js +3 -3
- package/build/social-link/edit.js.map +1 -1
- package/build/social-links/deprecated.js +2 -2
- package/build/social-links/deprecated.js.map +1 -1
- package/build/social-links/edit.js +2 -2
- package/build/social-links/edit.js.map +1 -1
- package/build/social-links/save.js +2 -2
- package/build/social-links/save.js.map +1 -1
- package/build/spacer/edit.js +3 -3
- package/build/spacer/edit.js.map +1 -1
- package/build/table/deprecated.js +8 -8
- package/build/table/deprecated.js.map +1 -1
- package/build/table/edit.js +3 -3
- package/build/table/edit.js.map +1 -1
- package/build/table/save.js +3 -3
- package/build/table/save.js.map +1 -1
- package/build/term-description/edit.js +2 -2
- package/build/term-description/edit.js.map +1 -1
- package/build/utils/caption.js +2 -2
- package/build/utils/caption.js.map +1 -1
- package/build/verse/deprecated.js +2 -2
- package/build/verse/deprecated.js.map +1 -1
- package/build/verse/edit.js +2 -2
- package/build/verse/edit.js.map +1 -1
- package/build/verse/save.js +2 -2
- package/build/verse/save.js.map +1 -1
- package/build/video/edit.js +2 -2
- package/build/video/edit.js.map +1 -1
- package/build-module/audio/edit.js +2 -2
- package/build-module/audio/edit.js.map +1 -1
- package/build-module/avatar/edit.js +2 -2
- package/build-module/avatar/edit.js.map +1 -1
- package/build-module/block/edit.js +27 -169
- package/build-module/block/edit.js.map +1 -1
- package/build-module/button/deprecated.js +16 -16
- package/build-module/button/deprecated.js.map +1 -1
- package/build-module/button/edit.js +3 -7
- package/build-module/button/edit.js.map +1 -1
- package/build-module/button/index.js +1 -0
- package/build-module/button/index.js.map +1 -1
- package/build-module/button/save.js +3 -3
- package/build-module/button/save.js.map +1 -1
- package/build-module/buttons/deprecated.js +2 -2
- package/build-module/buttons/deprecated.js.map +1 -1
- package/build-module/buttons/edit.js +2 -2
- package/build-module/buttons/edit.js.map +1 -1
- package/build-module/buttons/save.js +2 -2
- package/build-module/buttons/save.js.map +1 -1
- package/build-module/categories/edit.js +2 -2
- package/build-module/categories/edit.js.map +1 -1
- package/build-module/column/deprecated.js +2 -2
- package/build-module/column/deprecated.js.map +1 -1
- package/build-module/column/edit.js +2 -2
- package/build-module/column/edit.js.map +1 -1
- package/build-module/column/save.js +2 -2
- package/build-module/column/save.js.map +1 -1
- package/build-module/columns/deprecated.js +3 -3
- package/build-module/columns/deprecated.js.map +1 -1
- package/build-module/columns/edit.js +2 -2
- package/build-module/columns/edit.js.map +1 -1
- package/build-module/columns/save.js +2 -2
- package/build-module/columns/save.js.map +1 -1
- package/build-module/comment-author-name/edit.js +2 -2
- package/build-module/comment-author-name/edit.js.map +1 -1
- package/build-module/comment-content/edit.js +2 -2
- package/build-module/comment-content/edit.js.map +1 -1
- package/build-module/comment-edit-link/edit.js +2 -2
- package/build-module/comment-edit-link/edit.js.map +1 -1
- package/build-module/comment-reply-link/edit.js +2 -2
- package/build-module/comment-reply-link/edit.js.map +1 -1
- package/build-module/comments/edit/comments-legacy.js +2 -2
- package/build-module/comments/edit/comments-legacy.js.map +1 -1
- package/build-module/comments-title/edit.js +2 -2
- package/build-module/comments-title/edit.js.map +1 -1
- package/build-module/cover/deprecated.js +38 -38
- package/build-module/cover/deprecated.js.map +1 -1
- package/build-module/cover/edit/index.js +6 -6
- package/build-module/cover/edit/index.js.map +1 -1
- package/build-module/cover/edit/resizable-cover-popover.js +2 -2
- package/build-module/cover/edit/resizable-cover-popover.js.map +1 -1
- package/build-module/cover/edit.native.js +2 -2
- package/build-module/cover/edit.native.js.map +1 -1
- package/build-module/cover/save.js +5 -5
- package/build-module/cover/save.js.map +1 -1
- package/build-module/embed/deprecated.js +3 -3
- package/build-module/embed/deprecated.js.map +1 -1
- package/build-module/embed/edit.js +2 -2
- package/build-module/embed/edit.js.map +1 -1
- package/build-module/embed/edit.native.js +2 -2
- package/build-module/embed/edit.native.js.map +1 -1
- package/build-module/embed/embed-preview.js +3 -3
- package/build-module/embed/embed-preview.js.map +1 -1
- package/build-module/embed/embed-preview.native.js +2 -2
- package/build-module/embed/embed-preview.native.js.map +1 -1
- package/build-module/embed/icons.js +6 -0
- package/build-module/embed/icons.js.map +1 -1
- package/build-module/embed/save.js +2 -2
- package/build-module/embed/save.js.map +1 -1
- package/build-module/embed/util.js +10 -8
- package/build-module/embed/util.js.map +1 -1
- package/build-module/embed/variations.js +10 -1
- package/build-module/embed/variations.js.map +1 -1
- package/build-module/file/deprecated.js +2 -2
- package/build-module/file/deprecated.js.map +1 -1
- package/build-module/file/edit.js +3 -3
- package/build-module/file/edit.js.map +1 -1
- package/build-module/file/save.js +2 -2
- package/build-module/file/save.js.map +1 -1
- package/build-module/form-input/deprecated.js +3 -3
- package/build-module/form-input/deprecated.js.map +1 -1
- package/build-module/form-input/edit.js +4 -4
- package/build-module/form-input/edit.js.map +1 -1
- package/build-module/form-input/save.js +3 -3
- package/build-module/form-input/save.js.map +1 -1
- package/build-module/form-submission-notification/edit.js +2 -2
- package/build-module/form-submission-notification/edit.js.map +1 -1
- package/build-module/form-submission-notification/save.js +2 -2
- package/build-module/form-submission-notification/save.js.map +1 -1
- package/build-module/gallery/deprecated.js +3 -3
- package/build-module/gallery/deprecated.js.map +1 -1
- package/build-module/gallery/edit.js +2 -2
- package/build-module/gallery/edit.js.map +1 -1
- package/build-module/gallery/gallery.js +2 -2
- package/build-module/gallery/gallery.js.map +1 -1
- package/build-module/gallery/save.js +3 -3
- package/build-module/gallery/save.js.map +1 -1
- package/build-module/gallery/v1/gallery-image.js +2 -2
- package/build-module/gallery/v1/gallery-image.js.map +1 -1
- package/build-module/gallery/v1/gallery.js +3 -3
- package/build-module/gallery/v1/gallery.js.map +1 -1
- package/build-module/gallery/v1/save.js +3 -3
- package/build-module/gallery/v1/save.js.map +1 -1
- package/build-module/group/deprecated.js +4 -4
- package/build-module/group/deprecated.js.map +1 -1
- package/build-module/heading/deprecated.js +6 -6
- package/build-module/heading/deprecated.js.map +1 -1
- package/build-module/heading/edit.js +2 -19
- package/build-module/heading/edit.js.map +1 -1
- package/build-module/heading/edit.native.js +2 -2
- package/build-module/heading/edit.native.js.map +1 -1
- package/build-module/heading/index.js +1 -0
- package/build-module/heading/index.js.map +1 -1
- package/build-module/heading/save.js +2 -2
- package/build-module/heading/save.js.map +1 -1
- package/build-module/home-link/edit.js +2 -2
- package/build-module/home-link/edit.js.map +1 -1
- package/build-module/html/edit.js +0 -2
- package/build-module/html/edit.js.map +1 -1
- package/build-module/image/deprecated.js +10 -10
- package/build-module/image/deprecated.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 +5 -3
- package/build-module/image/image.js.map +1 -1
- package/build-module/image/save.js +3 -3
- package/build-module/image/save.js.map +1 -1
- package/build-module/latest-posts/edit.js +6 -6
- package/build-module/latest-posts/edit.js.map +1 -1
- package/build-module/list/deprecated.js +90 -1
- package/build-module/list/deprecated.js.map +1 -1
- package/build-module/list/index.js +0 -2
- package/build-module/list/index.js.map +1 -1
- package/build-module/list-item/edit.js +2 -9
- package/build-module/list-item/edit.js.map +1 -1
- package/build-module/list-item/index.js +2 -1
- package/build-module/list-item/index.js.map +1 -1
- package/build-module/media-text/deprecated.js +10 -10
- package/build-module/media-text/deprecated.js.map +1 -1
- package/build-module/media-text/edit.js +2 -2
- package/build-module/media-text/edit.js.map +1 -1
- package/build-module/media-text/media-container.js +2 -2
- package/build-module/media-text/media-container.js.map +1 -1
- package/build-module/media-text/save.js +3 -3
- package/build-module/media-text/save.js.map +1 -1
- package/build-module/navigation/edit/index.js +3 -3
- package/build-module/navigation/edit/index.js.map +1 -1
- package/build-module/navigation/edit/responsive-wrapper.js +3 -3
- package/build-module/navigation/edit/responsive-wrapper.js.map +1 -1
- package/build-module/navigation/edit/utils.js +2 -2
- package/build-module/navigation/edit/utils.js.map +1 -1
- package/build-module/navigation-link/edit.js +3 -3
- package/build-module/navigation-link/edit.js.map +1 -1
- package/build-module/navigation-submenu/edit.js +2 -2
- package/build-module/navigation-submenu/edit.js.map +1 -1
- package/build-module/page-list/edit.js +2 -2
- package/build-module/page-list/edit.js.map +1 -1
- package/build-module/page-list-item/edit.js +3 -3
- package/build-module/page-list-item/edit.js.map +1 -1
- package/build-module/paragraph/deprecated.js +6 -6
- package/build-module/paragraph/deprecated.js.map +1 -1
- package/build-module/paragraph/edit.js +2 -18
- package/build-module/paragraph/edit.js.map +1 -1
- package/build-module/paragraph/index.js +1 -0
- package/build-module/paragraph/index.js.map +1 -1
- package/build-module/paragraph/save.js +2 -2
- package/build-module/paragraph/save.js.map +1 -1
- package/build-module/paragraph/transforms.js +1 -0
- package/build-module/paragraph/transforms.js.map +1 -1
- package/build-module/pattern/edit.js +1 -1
- package/build-module/pattern/edit.js.map +1 -1
- package/build-module/post-author/edit.js +2 -2
- package/build-module/post-author/edit.js.map +1 -1
- package/build-module/post-author-biography/edit.js +2 -2
- package/build-module/post-author-biography/edit.js.map +1 -1
- package/build-module/post-author-name/edit.js +2 -2
- package/build-module/post-author-name/edit.js.map +1 -1
- package/build-module/post-comments-count/edit.js +2 -2
- package/build-module/post-comments-count/edit.js.map +1 -1
- package/build-module/post-comments-form/edit.js +2 -2
- package/build-module/post-comments-form/edit.js.map +1 -1
- package/build-module/post-comments-form/form.js +2 -2
- package/build-module/post-comments-form/form.js.map +1 -1
- package/build-module/post-comments-link/edit.js +2 -2
- package/build-module/post-comments-link/edit.js.map +1 -1
- package/build-module/post-date/edit.js +2 -2
- package/build-module/post-date/edit.js.map +1 -1
- package/build-module/post-excerpt/edit.js +3 -3
- package/build-module/post-excerpt/edit.js.map +1 -1
- package/build-module/post-featured-image/dimension-controls.js +20 -28
- package/build-module/post-featured-image/dimension-controls.js.map +1 -1
- package/build-module/post-featured-image/edit.js +3 -3
- package/build-module/post-featured-image/edit.js.map +1 -1
- package/build-module/post-featured-image/overlay.js +2 -2
- package/build-module/post-featured-image/overlay.js.map +1 -1
- package/build-module/post-navigation-link/edit.js +2 -2
- package/build-module/post-navigation-link/edit.js.map +1 -1
- package/build-module/post-template/edit.js +7 -7
- package/build-module/post-template/edit.js.map +1 -1
- package/build-module/post-terms/edit.js +2 -2
- package/build-module/post-terms/edit.js.map +1 -1
- package/build-module/post-time-to-read/edit.js +3 -3
- package/build-module/post-time-to-read/edit.js.map +1 -1
- package/build-module/post-title/edit.js +2 -2
- package/build-module/post-title/edit.js.map +1 -1
- package/build-module/pullquote/deprecated.js +7 -7
- package/build-module/pullquote/deprecated.js.map +1 -1
- package/build-module/pullquote/edit.js +2 -2
- package/build-module/pullquote/edit.js.map +1 -1
- package/build-module/pullquote/save.js +2 -2
- package/build-module/pullquote/save.js.map +1 -1
- package/build-module/query-title/edit.js +2 -2
- package/build-module/query-title/edit.js.map +1 -1
- package/build-module/quote/deprecated.js +3 -3
- package/build-module/quote/deprecated.js.map +1 -1
- package/build-module/quote/edit.js +2 -2
- package/build-module/quote/edit.js.map +1 -1
- package/build-module/quote/save.js +2 -2
- package/build-module/quote/save.js.map +1 -1
- package/build-module/rss/edit.js +10 -8
- package/build-module/rss/edit.js.map +1 -1
- package/build-module/search/edit.js +6 -6
- package/build-module/search/edit.js.map +1 -1
- package/build-module/search/edit.native.js +2 -2
- package/build-module/search/edit.native.js.map +1 -1
- package/build-module/separator/deprecated.js +2 -2
- package/build-module/separator/deprecated.js.map +1 -1
- package/build-module/separator/edit.js +2 -2
- package/build-module/separator/edit.js.map +1 -1
- package/build-module/separator/save.js +2 -2
- package/build-module/separator/save.js.map +1 -1
- package/build-module/shortcode/edit.js +8 -11
- package/build-module/shortcode/edit.js.map +1 -1
- package/build-module/site-logo/edit.js +4 -4
- package/build-module/site-logo/edit.js.map +1 -1
- package/build-module/site-tagline/edit.js +2 -2
- package/build-module/site-tagline/edit.js.map +1 -1
- package/build-module/site-title/edit.js +2 -2
- package/build-module/site-title/edit.js.map +1 -1
- package/build-module/social-link/edit.js +3 -3
- package/build-module/social-link/edit.js.map +1 -1
- package/build-module/social-links/deprecated.js +2 -2
- package/build-module/social-links/deprecated.js.map +1 -1
- package/build-module/social-links/edit.js +2 -2
- package/build-module/social-links/edit.js.map +1 -1
- package/build-module/social-links/save.js +2 -2
- package/build-module/social-links/save.js.map +1 -1
- package/build-module/spacer/edit.js +3 -3
- package/build-module/spacer/edit.js.map +1 -1
- package/build-module/table/deprecated.js +8 -8
- package/build-module/table/deprecated.js.map +1 -1
- package/build-module/table/edit.js +3 -3
- package/build-module/table/edit.js.map +1 -1
- package/build-module/table/save.js +3 -3
- package/build-module/table/save.js.map +1 -1
- package/build-module/term-description/edit.js +2 -2
- package/build-module/term-description/edit.js.map +1 -1
- package/build-module/utils/caption.js +2 -2
- package/build-module/utils/caption.js.map +1 -1
- package/build-module/verse/deprecated.js +2 -2
- package/build-module/verse/deprecated.js.map +1 -1
- package/build-module/verse/edit.js +2 -2
- package/build-module/verse/edit.js.map +1 -1
- package/build-module/verse/save.js +2 -2
- package/build-module/verse/save.js.map +1 -1
- package/build-module/video/edit.js +2 -2
- package/build-module/video/edit.js.map +1 -1
- package/build-style/block/editor-rtl.css +4 -4
- package/build-style/block/editor.css +4 -4
- package/build-style/buttons/editor-rtl.css +1 -1
- package/build-style/buttons/editor.css +1 -1
- package/build-style/buttons/style-rtl.css +1 -1
- package/build-style/buttons/style.css +1 -1
- package/build-style/common-rtl.css +3 -7
- package/build-style/common.css +3 -7
- package/build-style/editor-rtl.css +15 -32
- package/build-style/editor.css +15 -32
- package/build-style/group/editor-rtl.css +2 -1
- package/build-style/group/editor.css +2 -1
- package/build-style/image/editor-rtl.css +3 -0
- package/build-style/image/editor.css +3 -0
- package/build-style/image/style-rtl.css +1 -2
- package/build-style/image/style.css +1 -2
- package/build-style/post-template/style-rtl.css +0 -3
- package/build-style/post-template/style.css +0 -3
- package/build-style/rss/editor-rtl.css +1 -10
- package/build-style/rss/editor.css +1 -10
- package/build-style/shortcode/editor-rtl.css +0 -4
- package/build-style/shortcode/editor.css +0 -4
- package/build-style/style-rtl.css +5 -13
- package/build-style/style.css +5 -13
- package/build-style/template-part/editor-rtl.css +3 -7
- package/build-style/template-part/editor.css +3 -7
- package/package.json +36 -36
- package/src/audio/edit.js +2 -2
- package/src/avatar/edit.js +2 -2
- package/src/block/edit.js +30 -245
- package/src/block/editor.scss +7 -5
- package/src/button/block.json +1 -0
- package/src/button/deprecated.js +16 -16
- package/src/button/edit.js +3 -9
- package/src/button/save.js +3 -3
- package/src/buttons/deprecated.js +2 -2
- package/src/buttons/edit.js +2 -2
- package/src/buttons/editor.scss +1 -3
- package/src/buttons/save.js +2 -2
- package/src/buttons/style.scss +1 -3
- package/src/categories/edit.js +2 -2
- package/src/code/theme.native.scss +1 -1
- package/src/column/deprecated.js +2 -2
- package/src/column/edit.js +2 -2
- package/src/column/save.js +2 -2
- package/src/columns/deprecated.js +3 -3
- package/src/columns/edit.js +2 -2
- package/src/columns/save.js +2 -2
- package/src/comment-author-name/edit.js +2 -2
- package/src/comment-content/edit.js +2 -2
- package/src/comment-edit-link/edit.js +2 -2
- package/src/comment-reply-link/edit.js +2 -2
- package/src/comments/edit/comments-legacy.js +2 -2
- package/src/comments-title/edit.js +2 -2
- package/src/common.scss +4 -4
- package/src/cover/deprecated.js +38 -38
- package/src/cover/edit/index.js +6 -9
- package/src/cover/edit/resizable-cover-popover.js +2 -2
- package/src/cover/edit.native.js +2 -2
- package/src/cover/save.js +5 -5
- package/src/embed/deprecated.js +3 -3
- package/src/embed/edit.js +2 -2
- package/src/embed/edit.native.js +2 -2
- package/src/embed/embed-preview.js +3 -3
- package/src/embed/embed-preview.native.js +2 -2
- package/src/embed/icons.js +9 -0
- package/src/embed/save.js +2 -2
- package/src/embed/util.js +10 -6
- package/src/embed/variations.js +9 -0
- package/src/file/deprecated.js +2 -2
- package/src/file/edit.js +3 -3
- package/src/file/save.js +2 -2
- package/src/form-input/deprecated.js +3 -3
- package/src/form-input/edit.js +4 -4
- package/src/form-input/save.js +3 -3
- package/src/form-submission-notification/edit.js +2 -2
- package/src/form-submission-notification/save.js +4 -7
- package/src/gallery/deprecated.js +3 -3
- package/src/gallery/edit.js +2 -2
- package/src/gallery/gallery.js +2 -2
- package/src/gallery/save.js +3 -3
- package/src/gallery/test/helpers.native.js +3 -3
- package/src/gallery/v1/gallery-image.js +2 -2
- package/src/gallery/v1/gallery.js +3 -3
- package/src/gallery/v1/save.js +3 -3
- package/src/group/deprecated.js +4 -4
- package/src/group/editor.scss +2 -1
- package/src/heading/block.json +1 -0
- package/src/heading/deprecated.js +6 -6
- package/src/heading/edit.js +2 -23
- package/src/heading/edit.native.js +2 -2
- package/src/heading/save.js +2 -2
- package/src/heading/test/__snapshots__/transforms.native.js.snap +1 -1
- package/src/home-link/edit.js +2 -2
- package/src/html/edit.js +0 -2
- package/src/image/deprecated.js +10 -10
- package/src/image/edit.js +5 -3
- package/src/image/editor.scss +13 -7
- package/src/image/image.js +5 -2
- package/src/image/save.js +3 -3
- package/src/image/style.scss +1 -3
- package/src/latest-posts/edit.js +6 -6
- package/src/latest-posts/index.php +1 -0
- package/src/list/block.json +0 -2
- package/src/list/deprecated.js +88 -1
- package/src/list/index.php +54 -0
- package/src/list/test/__snapshots__/edit.native.js.snap +11 -11
- package/src/list/test/__snapshots__/transforms.native.js.snap +3 -3
- package/src/list/test/edit.native.js +24 -24
- package/src/list/test/transforms.native.js +1 -1
- package/src/list-item/block.json +2 -1
- package/src/list-item/edit.js +0 -15
- package/src/media-text/deprecated.js +10 -10
- package/src/media-text/edit.js +2 -2
- package/src/media-text/media-container.js +2 -2
- package/src/media-text/save.js +3 -3
- package/src/navigation/edit/index.js +3 -3
- package/src/navigation/edit/responsive-wrapper.js +3 -3
- package/src/navigation/edit/utils.js +2 -2
- package/src/navigation/index.php +52 -1
- package/src/navigation-link/edit.js +3 -3
- package/src/navigation-submenu/edit.js +2 -2
- package/src/page-list/edit.js +2 -2
- package/src/page-list-item/edit.js +3 -3
- package/src/paragraph/block.json +1 -0
- package/src/paragraph/deprecated.js +6 -6
- package/src/paragraph/edit.js +2 -23
- package/src/paragraph/save.js +2 -2
- package/src/paragraph/test/__snapshots__/transforms.native.js.snap +1 -1
- package/src/pattern/edit.js +1 -1
- package/src/post-author/edit.js +2 -2
- package/src/post-author-biography/edit.js +2 -2
- package/src/post-author-name/edit.js +2 -2
- package/src/post-comments-count/edit.js +2 -2
- package/src/post-comments-form/edit.js +2 -2
- package/src/post-comments-form/form.js +2 -2
- package/src/post-comments-link/edit.js +2 -2
- package/src/post-date/edit.js +2 -2
- package/src/post-excerpt/edit.js +3 -3
- package/src/post-featured-image/dimension-controls.js +30 -36
- package/src/post-featured-image/edit.js +3 -3
- package/src/post-featured-image/overlay.js +2 -2
- package/src/post-navigation-link/edit.js +2 -2
- package/src/post-template/edit.js +7 -7
- package/src/post-template/style.scss +0 -4
- package/src/post-terms/edit.js +2 -2
- package/src/post-time-to-read/edit.js +3 -3
- package/src/post-title/edit.js +2 -2
- package/src/pullquote/deprecated.js +7 -7
- package/src/pullquote/edit.js +2 -2
- package/src/pullquote/save.js +2 -2
- package/src/query-title/edit.js +2 -2
- package/src/quote/deprecated.js +3 -3
- package/src/quote/edit.js +2 -2
- package/src/quote/save.js +2 -2
- package/src/rss/edit.js +30 -23
- package/src/rss/editor.scss +2 -16
- package/src/search/edit.js +6 -6
- package/src/search/edit.native.js +2 -2
- package/src/separator/deprecated.js +2 -2
- package/src/separator/edit.js +2 -2
- package/src/separator/save.js +2 -2
- package/src/shortcode/edit.js +13 -17
- package/src/shortcode/editor.scss +0 -6
- package/src/site-logo/edit.js +4 -4
- package/src/site-logo/index.php +2 -0
- package/src/site-tagline/edit.js +2 -2
- package/src/site-title/edit.js +2 -2
- package/src/social-link/edit.js +3 -3
- package/src/social-links/deprecated.js +2 -2
- package/src/social-links/edit.js +2 -2
- package/src/social-links/save.js +2 -2
- package/src/spacer/edit.js +3 -3
- package/src/table/deprecated.js +12 -20
- package/src/table/edit.js +3 -3
- package/src/table/save.js +3 -3
- package/src/template-part/editor.scss +5 -8
- package/src/term-description/edit.js +2 -2
- package/src/utils/caption.js +2 -2
- package/src/verse/deprecated.js +2 -2
- package/src/verse/edit.js +2 -2
- package/src/verse/save.js +2 -2
- package/src/video/edit.js +2 -2
- package/tsconfig.tsbuildinfo +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__","_x","SelectControl","__experimentalUnitControl","UnitControl","__experimentalToggleGroupControl","ToggleGroupControl","__experimentalToggleGroupControlOption","ToggleGroupControlOption","__experimentalUseCustomUnits","useCustomUnits","__experimentalToolsPanelItem","ToolsPanelItem","useSettings","store","blockEditorStore","useSelect","SCALE_OPTIONS","createElement","Fragment","value","label","DEFAULT_SCALE","DEFAULT_SIZE","scaleHelp","cover","contain","fill","DimensionControls","clientId","attributes","aspectRatio","width","height","scale","sizeSlug","setAttributes","media","availableUnits","units","imageSizes","select","getSettings","imageSizeOptions","filter","slug","media_details","sizes","source_url","map","name","onDimensionChange","dimension","nextValue","parsedValue","parseFloat","isNaN","scaleLabel","showScaleControl","hasValue","onDeselect","undefined","resetAllFilter","isShownByDefault","panelId","__nextHasNoMarginBottom","options","onChange","nextAspectRatio","className","labelPosition","min","nextHeight","nextWidth","help","isBlock","length","nextSizeSlug"],"sources":["@wordpress/block-library/src/post-featured-image/dimension-controls.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, _x } from '@wordpress/i18n';\nimport {\n\tSelectControl,\n\t__experimentalUnitControl as UnitControl,\n\t__experimentalToggleGroupControl as ToggleGroupControl,\n\t__experimentalToggleGroupControlOption as ToggleGroupControlOption,\n\t__experimentalUseCustomUnits as useCustomUnits,\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n} from '@wordpress/components';\nimport {\n\tuseSettings,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { useSelect } from '@wordpress/data';\n\nconst SCALE_OPTIONS = (\n\t<>\n\t\t<ToggleGroupControlOption\n\t\t\tvalue=\"cover\"\n\t\t\tlabel={ _x( 'Cover', 'Scale option for Image dimension control' ) }\n\t\t/>\n\t\t<ToggleGroupControlOption\n\t\t\tvalue=\"contain\"\n\t\t\tlabel={ _x(\n\t\t\t\t'Contain',\n\t\t\t\t'Scale option for Image dimension control'\n\t\t\t) }\n\t\t/>\n\t\t<ToggleGroupControlOption\n\t\t\tvalue=\"fill\"\n\t\t\tlabel={ _x( 'Fill', 'Scale option for Image dimension control' ) }\n\t\t/>\n\t</>\n);\n\nconst DEFAULT_SCALE = 'cover';\nconst DEFAULT_SIZE = 'full';\n\nconst scaleHelp = {\n\tcover: __(\n\t\t'Image is scaled and cropped to fill the entire space without being distorted.'\n\t),\n\tcontain: __(\n\t\t'Image is scaled to fill the space without clipping nor distorting.'\n\t),\n\tfill: __(\n\t\t'Image will be stretched and distorted to completely fill the space.'\n\t),\n};\n\nconst DimensionControls = ( {\n\tclientId,\n\tattributes: { aspectRatio, width, height, scale, sizeSlug },\n\tsetAttributes,\n\tmedia,\n} ) => {\n\tconst [ availableUnits ] = useSettings( 'spacing.units' );\n\tconst units = useCustomUnits( {\n\t\tavailableUnits: availableUnits || [ 'px', '%', 'vw', 'em', 'rem' ],\n\t} );\n\tconst imageSizes = useSelect(\n\t\t( select ) => select( blockEditorStore ).getSettings().imageSizes,\n\t\t[]\n\t);\n\tconst imageSizeOptions = imageSizes\n\t\t.filter( ( { slug } ) => {\n\t\t\treturn media?.media_details?.sizes?.[ slug ]?.source_url;\n\t\t} )\n\t\t.map( ( { name, slug } ) => ( {\n\t\t\tvalue: slug,\n\t\t\tlabel: name,\n\t\t} ) );\n\n\tconst onDimensionChange = ( dimension, nextValue ) => {\n\t\tconst parsedValue = parseFloat( nextValue );\n\t\t/**\n\t\t * If we have no value set and we change the unit,\n\t\t * we don't want to set the attribute, as it would\n\t\t * end up having the unit as value without any number.\n\t\t */\n\t\tif ( isNaN( parsedValue ) && nextValue ) {\n\t\t\treturn;\n\t\t}\n\t\tsetAttributes( {\n\t\t\t[ dimension ]: parsedValue < 0 ? '0' : nextValue,\n\t\t} );\n\t};\n\tconst scaleLabel = _x( 'Scale', 'Image scaling options' );\n\n\tconst showScaleControl =\n\t\theight || ( aspectRatio && aspectRatio !== 'auto' );\n\n\treturn (\n\t\t<>\n\t\t\t<ToolsPanelItem\n\t\t\t\thasValue={ () => !! aspectRatio }\n\t\t\t\tlabel={ __( 'Aspect ratio' ) }\n\t\t\t\tonDeselect={ () => setAttributes( { aspectRatio: undefined } ) }\n\t\t\t\tresetAllFilter={ () => ( {\n\t\t\t\t\taspectRatio: undefined,\n\t\t\t\t} ) }\n\t\t\t\tisShownByDefault\n\t\t\t\tpanelId={ clientId }\n\t\t\t>\n\t\t\t\t<SelectControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Aspect ratio' ) }\n\t\t\t\t\tvalue={ aspectRatio }\n\t\t\t\t\toptions={ [\n\t\t\t\t\t\t// These should use the same values as AspectRatioDropdown in @wordpress/block-editor\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tlabel: __( 'Original' ),\n\t\t\t\t\t\t\tvalue: 'auto',\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tlabel: __( 'Square' ),\n\t\t\t\t\t\t\tvalue: '1',\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tlabel: __( '16:9' ),\n\t\t\t\t\t\t\tvalue: '16/9',\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tlabel: __( '4:3' ),\n\t\t\t\t\t\t\tvalue: '4/3',\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tlabel: __( '3:2' ),\n\t\t\t\t\t\t\tvalue: '3/2',\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tlabel: __( '9:16' ),\n\t\t\t\t\t\t\tvalue: '9/16',\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tlabel: __( '3:4' ),\n\t\t\t\t\t\t\tvalue: '3/4',\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tlabel: __( '2:3' ),\n\t\t\t\t\t\t\tvalue: '2/3',\n\t\t\t\t\t\t},\n\t\t\t\t\t] }\n\t\t\t\t\tonChange={ ( nextAspectRatio ) =>\n\t\t\t\t\t\tsetAttributes( { aspectRatio: nextAspectRatio } )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t</ToolsPanelItem>\n\t\t\t<ToolsPanelItem\n\t\t\t\tclassName=\"single-column\"\n\t\t\t\thasValue={ () => !! height }\n\t\t\t\tlabel={ __( 'Height' ) }\n\t\t\t\tonDeselect={ () => setAttributes( { height: undefined } ) }\n\t\t\t\tresetAllFilter={ () => ( {\n\t\t\t\t\theight: undefined,\n\t\t\t\t} ) }\n\t\t\t\tisShownByDefault\n\t\t\t\tpanelId={ clientId }\n\t\t\t>\n\t\t\t\t<UnitControl\n\t\t\t\t\tlabel={ __( 'Height' ) }\n\t\t\t\t\tlabelPosition=\"top\"\n\t\t\t\t\tvalue={ height || '' }\n\t\t\t\t\tmin={ 0 }\n\t\t\t\t\tonChange={ ( nextHeight ) =>\n\t\t\t\t\t\tonDimensionChange( 'height', nextHeight )\n\t\t\t\t\t}\n\t\t\t\t\tunits={ units }\n\t\t\t\t/>\n\t\t\t</ToolsPanelItem>\n\t\t\t<ToolsPanelItem\n\t\t\t\tclassName=\"single-column\"\n\t\t\t\thasValue={ () => !! width }\n\t\t\t\tlabel={ __( 'Width' ) }\n\t\t\t\tonDeselect={ () => setAttributes( { width: undefined } ) }\n\t\t\t\tresetAllFilter={ () => ( {\n\t\t\t\t\twidth: undefined,\n\t\t\t\t} ) }\n\t\t\t\tisShownByDefault\n\t\t\t\tpanelId={ clientId }\n\t\t\t>\n\t\t\t\t<UnitControl\n\t\t\t\t\tlabel={ __( 'Width' ) }\n\t\t\t\t\tlabelPosition=\"top\"\n\t\t\t\t\tvalue={ width || '' }\n\t\t\t\t\tmin={ 0 }\n\t\t\t\t\tonChange={ ( nextWidth ) =>\n\t\t\t\t\t\tonDimensionChange( 'width', nextWidth )\n\t\t\t\t\t}\n\t\t\t\t\tunits={ units }\n\t\t\t\t/>\n\t\t\t</ToolsPanelItem>\n\t\t\t{ showScaleControl && (\n\t\t\t\t<ToolsPanelItem\n\t\t\t\t\thasValue={ () => !! scale && scale !== DEFAULT_SCALE }\n\t\t\t\t\tlabel={ scaleLabel }\n\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\tscale: DEFAULT_SCALE,\n\t\t\t\t\t\t} )\n\t\t\t\t\t}\n\t\t\t\t\tresetAllFilter={ () => ( {\n\t\t\t\t\t\tscale: DEFAULT_SCALE,\n\t\t\t\t\t} ) }\n\t\t\t\t\tisShownByDefault\n\t\t\t\t\tpanelId={ clientId }\n\t\t\t\t>\n\t\t\t\t\t<ToggleGroupControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ scaleLabel }\n\t\t\t\t\t\tvalue={ scale }\n\t\t\t\t\t\thelp={ scaleHelp[ scale ] }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tscale: value,\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tisBlock\n\t\t\t\t\t>\n\t\t\t\t\t\t{ SCALE_OPTIONS }\n\t\t\t\t\t</ToggleGroupControl>\n\t\t\t\t</ToolsPanelItem>\n\t\t\t) }\n\t\t\t{ !! imageSizeOptions.length && (\n\t\t\t\t<ToolsPanelItem\n\t\t\t\t\thasValue={ () => !! sizeSlug }\n\t\t\t\t\tlabel={ __( 'Resolution' ) }\n\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\tsetAttributes( { sizeSlug: undefined } )\n\t\t\t\t\t}\n\t\t\t\t\tresetAllFilter={ () => ( {\n\t\t\t\t\t\tsizeSlug: undefined,\n\t\t\t\t\t} ) }\n\t\t\t\t\tisShownByDefault={ false }\n\t\t\t\t\tpanelId={ clientId }\n\t\t\t\t>\n\t\t\t\t\t<SelectControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Resolution' ) }\n\t\t\t\t\t\tvalue={ sizeSlug || DEFAULT_SIZE }\n\t\t\t\t\t\toptions={ imageSizeOptions }\n\t\t\t\t\t\tonChange={ ( nextSizeSlug ) =>\n\t\t\t\t\t\t\tsetAttributes( { sizeSlug: nextSizeSlug } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\thelp={ __( 'Select the size of the source image.' ) }\n\t\t\t\t\t/>\n\t\t\t\t</ToolsPanelItem>\n\t\t\t) }\n\t\t</>\n\t);\n};\n\nexport default DimensionControls;\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,EAAE,EAAEC,EAAE,QAAQ,iBAAiB;AACxC,SACCC,aAAa,EACbC,yBAAyB,IAAIC,WAAW,EACxCC,gCAAgC,IAAIC,kBAAkB,EACtDC,sCAAsC,IAAIC,wBAAwB,EAClEC,4BAA4B,IAAIC,cAAc,EAC9CC,4BAA4B,IAAIC,cAAc,QACxC,uBAAuB;AAC9B,SACCC,WAAW,EACXC,KAAK,IAAIC,gBAAgB,QACnB,yBAAyB;AAChC,SAASC,SAAS,QAAQ,iBAAiB;AAE3C,MAAMC,aAAa,GAClBC,aAAA,CAAAC,QAAA,QACCD,aAAA,CAACV,wBAAwB;EACxBY,KAAK,EAAC,OAAO;EACbC,KAAK,EAAGpB,EAAE,CAAE,OAAO,EAAE,0CAA2C;AAAG,CACnE,CAAC,EACFiB,aAAA,CAACV,wBAAwB;EACxBY,KAAK,EAAC,SAAS;EACfC,KAAK,EAAGpB,EAAE,CACT,SAAS,EACT,0CACD;AAAG,CACH,CAAC,EACFiB,aAAA,CAACV,wBAAwB;EACxBY,KAAK,EAAC,MAAM;EACZC,KAAK,EAAGpB,EAAE,CAAE,MAAM,EAAE,0CAA2C;AAAG,CAClE,CACA,CACF;AAED,MAAMqB,aAAa,GAAG,OAAO;AAC7B,MAAMC,YAAY,GAAG,MAAM;AAE3B,MAAMC,SAAS,GAAG;EACjBC,KAAK,EAAEzB,EAAE,CACR,+EACD,CAAC;EACD0B,OAAO,EAAE1B,EAAE,CACV,oEACD,CAAC;EACD2B,IAAI,EAAE3B,EAAE,CACP,qEACD;AACD,CAAC;AAED,MAAM4B,iBAAiB,GAAGA,CAAE;EAC3BC,QAAQ;EACRC,UAAU,EAAE;IAAEC,WAAW;IAAEC,KAAK;IAAEC,MAAM;IAAEC,KAAK;IAAEC;EAAS,CAAC;EAC3DC,aAAa;EACbC;AACD,CAAC,KAAM;EACN,MAAM,CAAEC,cAAc,CAAE,GAAGzB,WAAW,CAAE,eAAgB,CAAC;EACzD,MAAM0B,KAAK,GAAG7B,cAAc,CAAE;IAC7B4B,cAAc,EAAEA,cAAc,IAAI,CAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK;EACjE,CAAE,CAAC;EACH,MAAME,UAAU,GAAGxB,SAAS,CACzByB,MAAM,IAAMA,MAAM,CAAE1B,gBAAiB,CAAC,CAAC2B,WAAW,CAAC,CAAC,CAACF,UAAU,EACjE,EACD,CAAC;EACD,MAAMG,gBAAgB,GAAGH,UAAU,CACjCI,MAAM,CAAE,CAAE;IAAEC;EAAK,CAAC,KAAM;IACxB,OAAOR,KAAK,EAAES,aAAa,EAAEC,KAAK,GAAIF,IAAI,CAAE,EAAEG,UAAU;EACzD,CAAE,CAAC,CACFC,GAAG,CAAE,CAAE;IAAEC,IAAI;IAAEL;EAAK,CAAC,MAAQ;IAC7BzB,KAAK,EAAEyB,IAAI;IACXxB,KAAK,EAAE6B;EACR,CAAC,CAAG,CAAC;EAEN,MAAMC,iBAAiB,GAAGA,CAAEC,SAAS,EAAEC,SAAS,KAAM;IACrD,MAAMC,WAAW,GAAGC,UAAU,CAAEF,SAAU,CAAC;IAC3C;AACF;AACA;AACA;AACA;IACE,IAAKG,KAAK,CAAEF,WAAY,CAAC,IAAID,SAAS,EAAG;MACxC;IACD;IACAjB,aAAa,CAAE;MACd,CAAEgB,SAAS,GAAIE,WAAW,GAAG,CAAC,GAAG,GAAG,GAAGD;IACxC,CAAE,CAAC;EACJ,CAAC;EACD,MAAMI,UAAU,GAAGxD,EAAE,CAAE,OAAO,EAAE,uBAAwB,CAAC;EAEzD,MAAMyD,gBAAgB,GACrBzB,MAAM,IAAMF,WAAW,IAAIA,WAAW,KAAK,MAAQ;EAEpD,OACCb,aAAA,CAAAC,QAAA,QACCD,aAAA,CAACN,cAAc;IACd+C,QAAQ,EAAGA,CAAA,KAAM,CAAC,CAAE5B,WAAa;IACjCV,KAAK,EAAGrB,EAAE,CAAE,cAAe,CAAG;IAC9B4D,UAAU,EAAGA,CAAA,KAAMxB,aAAa,CAAE;MAAEL,WAAW,EAAE8B;IAAU,CAAE,CAAG;IAChEC,cAAc,EAAGA,CAAA,MAAQ;MACxB/B,WAAW,EAAE8B;IACd,CAAC,CAAI;IACLE,gBAAgB;IAChBC,OAAO,EAAGnC;EAAU,GAEpBX,aAAA,CAAChB,aAAa;IACb+D,uBAAuB;IACvB5C,KAAK,EAAGrB,EAAE,CAAE,cAAe,CAAG;IAC9BoB,KAAK,EAAGW,WAAa;IACrBmC,OAAO,EAAG;IACT;IACA;MACC7C,KAAK,EAAErB,EAAE,CAAE,UAAW,CAAC;MACvBoB,KAAK,EAAE;IACR,CAAC,EACD;MACCC,KAAK,EAAErB,EAAE,CAAE,QAAS,CAAC;MACrBoB,KAAK,EAAE;IACR,CAAC,EACD;MACCC,KAAK,EAAErB,EAAE,CAAE,MAAO,CAAC;MACnBoB,KAAK,EAAE;IACR,CAAC,EACD;MACCC,KAAK,EAAErB,EAAE,CAAE,KAAM,CAAC;MAClBoB,KAAK,EAAE;IACR,CAAC,EACD;MACCC,KAAK,EAAErB,EAAE,CAAE,KAAM,CAAC;MAClBoB,KAAK,EAAE;IACR,CAAC,EACD;MACCC,KAAK,EAAErB,EAAE,CAAE,MAAO,CAAC;MACnBoB,KAAK,EAAE;IACR,CAAC,EACD;MACCC,KAAK,EAAErB,EAAE,CAAE,KAAM,CAAC;MAClBoB,KAAK,EAAE;IACR,CAAC,EACD;MACCC,KAAK,EAAErB,EAAE,CAAE,KAAM,CAAC;MAClBoB,KAAK,EAAE;IACR,CAAC,CACC;IACH+C,QAAQ,EAAKC,eAAe,IAC3BhC,aAAa,CAAE;MAAEL,WAAW,EAAEqC;IAAgB,CAAE;EAChD,CACD,CACc,CAAC,EACjBlD,aAAA,CAACN,cAAc;IACdyD,SAAS,EAAC,eAAe;IACzBV,QAAQ,EAAGA,CAAA,KAAM,CAAC,CAAE1B,MAAQ;IAC5BZ,KAAK,EAAGrB,EAAE,CAAE,QAAS,CAAG;IACxB4D,UAAU,EAAGA,CAAA,KAAMxB,aAAa,CAAE;MAAEH,MAAM,EAAE4B;IAAU,CAAE,CAAG;IAC3DC,cAAc,EAAGA,CAAA,MAAQ;MACxB7B,MAAM,EAAE4B;IACT,CAAC,CAAI;IACLE,gBAAgB;IAChBC,OAAO,EAAGnC;EAAU,GAEpBX,aAAA,CAACd,WAAW;IACXiB,KAAK,EAAGrB,EAAE,CAAE,QAAS,CAAG;IACxBsE,aAAa,EAAC,KAAK;IACnBlD,KAAK,EAAGa,MAAM,IAAI,EAAI;IACtBsC,GAAG,EAAG,CAAG;IACTJ,QAAQ,EAAKK,UAAU,IACtBrB,iBAAiB,CAAE,QAAQ,EAAEqB,UAAW,CACxC;IACDjC,KAAK,EAAGA;EAAO,CACf,CACc,CAAC,EACjBrB,aAAA,CAACN,cAAc;IACdyD,SAAS,EAAC,eAAe;IACzBV,QAAQ,EAAGA,CAAA,KAAM,CAAC,CAAE3B,KAAO;IAC3BX,KAAK,EAAGrB,EAAE,CAAE,OAAQ,CAAG;IACvB4D,UAAU,EAAGA,CAAA,KAAMxB,aAAa,CAAE;MAAEJ,KAAK,EAAE6B;IAAU,CAAE,CAAG;IAC1DC,cAAc,EAAGA,CAAA,MAAQ;MACxB9B,KAAK,EAAE6B;IACR,CAAC,CAAI;IACLE,gBAAgB;IAChBC,OAAO,EAAGnC;EAAU,GAEpBX,aAAA,CAACd,WAAW;IACXiB,KAAK,EAAGrB,EAAE,CAAE,OAAQ,CAAG;IACvBsE,aAAa,EAAC,KAAK;IACnBlD,KAAK,EAAGY,KAAK,IAAI,EAAI;IACrBuC,GAAG,EAAG,CAAG;IACTJ,QAAQ,EAAKM,SAAS,IACrBtB,iBAAiB,CAAE,OAAO,EAAEsB,SAAU,CACtC;IACDlC,KAAK,EAAGA;EAAO,CACf,CACc,CAAC,EACfmB,gBAAgB,IACjBxC,aAAA,CAACN,cAAc;IACd+C,QAAQ,EAAGA,CAAA,KAAM,CAAC,CAAEzB,KAAK,IAAIA,KAAK,KAAKZ,aAAe;IACtDD,KAAK,EAAGoC,UAAY;IACpBG,UAAU,EAAGA,CAAA,KACZxB,aAAa,CAAE;MACdF,KAAK,EAAEZ;IACR,CAAE,CACF;IACDwC,cAAc,EAAGA,CAAA,MAAQ;MACxB5B,KAAK,EAAEZ;IACR,CAAC,CAAI;IACLyC,gBAAgB;IAChBC,OAAO,EAAGnC;EAAU,GAEpBX,aAAA,CAACZ,kBAAkB;IAClB2D,uBAAuB;IACvB5C,KAAK,EAAGoC,UAAY;IACpBrC,KAAK,EAAGc,KAAO;IACfwC,IAAI,EAAGlD,SAAS,CAAEU,KAAK,CAAI;IAC3BiC,QAAQ,EAAK/C,KAAK,IACjBgB,aAAa,CAAE;MACdF,KAAK,EAAEd;IACR,CAAE,CACF;IACDuD,OAAO;EAAA,GAEL1D,aACiB,CACL,CAChB,EACC,CAAC,CAAE0B,gBAAgB,CAACiC,MAAM,IAC3B1D,aAAA,CAACN,cAAc;IACd+C,QAAQ,EAAGA,CAAA,KAAM,CAAC,CAAExB,QAAU;IAC9Bd,KAAK,EAAGrB,EAAE,CAAE,YAAa,CAAG;IAC5B4D,UAAU,EAAGA,CAAA,KACZxB,aAAa,CAAE;MAAED,QAAQ,EAAE0B;IAAU,CAAE,CACvC;IACDC,cAAc,EAAGA,CAAA,MAAQ;MACxB3B,QAAQ,EAAE0B;IACX,CAAC,CAAI;IACLE,gBAAgB,EAAG,KAAO;IAC1BC,OAAO,EAAGnC;EAAU,GAEpBX,aAAA,CAAChB,aAAa;IACb+D,uBAAuB;IACvB5C,KAAK,EAAGrB,EAAE,CAAE,YAAa,CAAG;IAC5BoB,KAAK,EAAGe,QAAQ,IAAIZ,YAAc;IAClC2C,OAAO,EAAGvB,gBAAkB;IAC5BwB,QAAQ,EAAKU,YAAY,IACxBzC,aAAa,CAAE;MAAED,QAAQ,EAAE0C;IAAa,CAAE,CAC1C;IACDH,IAAI,EAAG1E,EAAE,CAAE,sCAAuC;EAAG,CACrD,CACc,CAEhB,CAAC;AAEL,CAAC;AAED,eAAe4B,iBAAiB","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["__","_x","SelectControl","__experimentalUnitControl","UnitControl","__experimentalToggleGroupControl","ToggleGroupControl","__experimentalToggleGroupControlOption","ToggleGroupControlOption","__experimentalUseCustomUnits","useCustomUnits","__experimentalToolsPanelItem","ToolsPanelItem","useSettings","store","blockEditorStore","useSelect","SCALE_OPTIONS","createElement","Fragment","value","label","DEFAULT_SCALE","DEFAULT_SIZE","scaleHelp","cover","contain","fill","DimensionControls","clientId","attributes","aspectRatio","width","height","scale","sizeSlug","setAttributes","media","availableUnits","defaultRatios","themeRatios","showDefaultRatios","units","imageSizes","select","getSettings","imageSizeOptions","filter","slug","media_details","sizes","source_url","map","name","onDimensionChange","dimension","nextValue","parsedValue","parseFloat","isNaN","scaleLabel","showScaleControl","themeOptions","ratio","defaultOptions","aspectRatioOptions","hasValue","onDeselect","undefined","resetAllFilter","isShownByDefault","panelId","__nextHasNoMarginBottom","options","onChange","nextAspectRatio","className","labelPosition","min","nextHeight","nextWidth","help","isBlock","length","nextSizeSlug"],"sources":["@wordpress/block-library/src/post-featured-image/dimension-controls.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, _x } from '@wordpress/i18n';\nimport {\n\tSelectControl,\n\t__experimentalUnitControl as UnitControl,\n\t__experimentalToggleGroupControl as ToggleGroupControl,\n\t__experimentalToggleGroupControlOption as ToggleGroupControlOption,\n\t__experimentalUseCustomUnits as useCustomUnits,\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n} from '@wordpress/components';\nimport {\n\tuseSettings,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { useSelect } from '@wordpress/data';\n\nconst SCALE_OPTIONS = (\n\t<>\n\t\t<ToggleGroupControlOption\n\t\t\tvalue=\"cover\"\n\t\t\tlabel={ _x( 'Cover', 'Scale option for Image dimension control' ) }\n\t\t/>\n\t\t<ToggleGroupControlOption\n\t\t\tvalue=\"contain\"\n\t\t\tlabel={ _x(\n\t\t\t\t'Contain',\n\t\t\t\t'Scale option for Image dimension control'\n\t\t\t) }\n\t\t/>\n\t\t<ToggleGroupControlOption\n\t\t\tvalue=\"fill\"\n\t\t\tlabel={ _x( 'Fill', 'Scale option for Image dimension control' ) }\n\t\t/>\n\t</>\n);\n\nconst DEFAULT_SCALE = 'cover';\nconst DEFAULT_SIZE = 'full';\n\nconst scaleHelp = {\n\tcover: __(\n\t\t'Image is scaled and cropped to fill the entire space without being distorted.'\n\t),\n\tcontain: __(\n\t\t'Image is scaled to fill the space without clipping nor distorting.'\n\t),\n\tfill: __(\n\t\t'Image will be stretched and distorted to completely fill the space.'\n\t),\n};\n\nconst DimensionControls = ( {\n\tclientId,\n\tattributes: { aspectRatio, width, height, scale, sizeSlug },\n\tsetAttributes,\n\tmedia,\n} ) => {\n\tconst [ availableUnits, defaultRatios, themeRatios, showDefaultRatios ] =\n\t\tuseSettings(\n\t\t\t'spacing.units',\n\t\t\t'dimensions.aspectRatios.default',\n\t\t\t'dimensions.aspectRatios.theme',\n\t\t\t'dimensions.defaultAspectRatios'\n\t\t);\n\tconst units = useCustomUnits( {\n\t\tavailableUnits: availableUnits || [ 'px', '%', 'vw', 'em', 'rem' ],\n\t} );\n\tconst imageSizes = useSelect(\n\t\t( select ) => select( blockEditorStore ).getSettings().imageSizes,\n\t\t[]\n\t);\n\tconst imageSizeOptions = imageSizes\n\t\t.filter( ( { slug } ) => {\n\t\t\treturn media?.media_details?.sizes?.[ slug ]?.source_url;\n\t\t} )\n\t\t.map( ( { name, slug } ) => ( {\n\t\t\tvalue: slug,\n\t\t\tlabel: name,\n\t\t} ) );\n\n\tconst onDimensionChange = ( dimension, nextValue ) => {\n\t\tconst parsedValue = parseFloat( nextValue );\n\t\t/**\n\t\t * If we have no value set and we change the unit,\n\t\t * we don't want to set the attribute, as it would\n\t\t * end up having the unit as value without any number.\n\t\t */\n\t\tif ( isNaN( parsedValue ) && nextValue ) {\n\t\t\treturn;\n\t\t}\n\t\tsetAttributes( {\n\t\t\t[ dimension ]: parsedValue < 0 ? '0' : nextValue,\n\t\t} );\n\t};\n\tconst scaleLabel = _x( 'Scale', 'Image scaling options' );\n\n\tconst showScaleControl =\n\t\theight || ( aspectRatio && aspectRatio !== 'auto' );\n\n\tconst themeOptions = themeRatios?.map( ( { name, ratio } ) => ( {\n\t\tlabel: name,\n\t\tvalue: ratio,\n\t} ) );\n\n\tconst defaultOptions = defaultRatios?.map( ( { name, ratio } ) => ( {\n\t\tlabel: name,\n\t\tvalue: ratio,\n\t} ) );\n\n\tconst aspectRatioOptions = [\n\t\t{\n\t\t\tlabel: _x(\n\t\t\t\t'Original',\n\t\t\t\t'Aspect ratio option for dimensions control'\n\t\t\t),\n\t\t\tvalue: 'auto',\n\t\t},\n\t\t...( showDefaultRatios ? defaultOptions : [] ),\n\t\t...( themeOptions ? themeOptions : [] ),\n\t];\n\n\treturn (\n\t\t<>\n\t\t\t<ToolsPanelItem\n\t\t\t\thasValue={ () => !! aspectRatio }\n\t\t\t\tlabel={ __( 'Aspect ratio' ) }\n\t\t\t\tonDeselect={ () => setAttributes( { aspectRatio: undefined } ) }\n\t\t\t\tresetAllFilter={ () => ( {\n\t\t\t\t\taspectRatio: undefined,\n\t\t\t\t} ) }\n\t\t\t\tisShownByDefault\n\t\t\t\tpanelId={ clientId }\n\t\t\t>\n\t\t\t\t<SelectControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Aspect ratio' ) }\n\t\t\t\t\tvalue={ aspectRatio }\n\t\t\t\t\toptions={ aspectRatioOptions }\n\t\t\t\t\tonChange={ ( nextAspectRatio ) =>\n\t\t\t\t\t\tsetAttributes( { aspectRatio: nextAspectRatio } )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t</ToolsPanelItem>\n\t\t\t<ToolsPanelItem\n\t\t\t\tclassName=\"single-column\"\n\t\t\t\thasValue={ () => !! height }\n\t\t\t\tlabel={ __( 'Height' ) }\n\t\t\t\tonDeselect={ () => setAttributes( { height: undefined } ) }\n\t\t\t\tresetAllFilter={ () => ( {\n\t\t\t\t\theight: undefined,\n\t\t\t\t} ) }\n\t\t\t\tisShownByDefault\n\t\t\t\tpanelId={ clientId }\n\t\t\t>\n\t\t\t\t<UnitControl\n\t\t\t\t\tlabel={ __( 'Height' ) }\n\t\t\t\t\tlabelPosition=\"top\"\n\t\t\t\t\tvalue={ height || '' }\n\t\t\t\t\tmin={ 0 }\n\t\t\t\t\tonChange={ ( nextHeight ) =>\n\t\t\t\t\t\tonDimensionChange( 'height', nextHeight )\n\t\t\t\t\t}\n\t\t\t\t\tunits={ units }\n\t\t\t\t/>\n\t\t\t</ToolsPanelItem>\n\t\t\t<ToolsPanelItem\n\t\t\t\tclassName=\"single-column\"\n\t\t\t\thasValue={ () => !! width }\n\t\t\t\tlabel={ __( 'Width' ) }\n\t\t\t\tonDeselect={ () => setAttributes( { width: undefined } ) }\n\t\t\t\tresetAllFilter={ () => ( {\n\t\t\t\t\twidth: undefined,\n\t\t\t\t} ) }\n\t\t\t\tisShownByDefault\n\t\t\t\tpanelId={ clientId }\n\t\t\t>\n\t\t\t\t<UnitControl\n\t\t\t\t\tlabel={ __( 'Width' ) }\n\t\t\t\t\tlabelPosition=\"top\"\n\t\t\t\t\tvalue={ width || '' }\n\t\t\t\t\tmin={ 0 }\n\t\t\t\t\tonChange={ ( nextWidth ) =>\n\t\t\t\t\t\tonDimensionChange( 'width', nextWidth )\n\t\t\t\t\t}\n\t\t\t\t\tunits={ units }\n\t\t\t\t/>\n\t\t\t</ToolsPanelItem>\n\t\t\t{ showScaleControl && (\n\t\t\t\t<ToolsPanelItem\n\t\t\t\t\thasValue={ () => !! scale && scale !== DEFAULT_SCALE }\n\t\t\t\t\tlabel={ scaleLabel }\n\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\tscale: DEFAULT_SCALE,\n\t\t\t\t\t\t} )\n\t\t\t\t\t}\n\t\t\t\t\tresetAllFilter={ () => ( {\n\t\t\t\t\t\tscale: DEFAULT_SCALE,\n\t\t\t\t\t} ) }\n\t\t\t\t\tisShownByDefault\n\t\t\t\t\tpanelId={ clientId }\n\t\t\t\t>\n\t\t\t\t\t<ToggleGroupControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ scaleLabel }\n\t\t\t\t\t\tvalue={ scale }\n\t\t\t\t\t\thelp={ scaleHelp[ scale ] }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tscale: value,\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tisBlock\n\t\t\t\t\t>\n\t\t\t\t\t\t{ SCALE_OPTIONS }\n\t\t\t\t\t</ToggleGroupControl>\n\t\t\t\t</ToolsPanelItem>\n\t\t\t) }\n\t\t\t{ !! imageSizeOptions.length && (\n\t\t\t\t<ToolsPanelItem\n\t\t\t\t\thasValue={ () => !! sizeSlug }\n\t\t\t\t\tlabel={ __( 'Resolution' ) }\n\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\tsetAttributes( { sizeSlug: undefined } )\n\t\t\t\t\t}\n\t\t\t\t\tresetAllFilter={ () => ( {\n\t\t\t\t\t\tsizeSlug: undefined,\n\t\t\t\t\t} ) }\n\t\t\t\t\tisShownByDefault={ false }\n\t\t\t\t\tpanelId={ clientId }\n\t\t\t\t>\n\t\t\t\t\t<SelectControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Resolution' ) }\n\t\t\t\t\t\tvalue={ sizeSlug || DEFAULT_SIZE }\n\t\t\t\t\t\toptions={ imageSizeOptions }\n\t\t\t\t\t\tonChange={ ( nextSizeSlug ) =>\n\t\t\t\t\t\t\tsetAttributes( { sizeSlug: nextSizeSlug } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\thelp={ __( 'Select the size of the source image.' ) }\n\t\t\t\t\t/>\n\t\t\t\t</ToolsPanelItem>\n\t\t\t) }\n\t\t</>\n\t);\n};\n\nexport default DimensionControls;\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -2,7 +2,7 @@ import { createElement, Fragment } from "react";
|
|
|
2
2
|
/**
|
|
3
3
|
* External dependencies
|
|
4
4
|
*/
|
|
5
|
-
import
|
|
5
|
+
import clsx from 'clsx';
|
|
6
6
|
|
|
7
7
|
/**
|
|
8
8
|
* WordPress dependencies
|
|
@@ -95,7 +95,7 @@ export default function PostFeaturedImageEdit({
|
|
|
95
95
|
height,
|
|
96
96
|
aspectRatio
|
|
97
97
|
},
|
|
98
|
-
className:
|
|
98
|
+
className: clsx({
|
|
99
99
|
'is-transient': temporaryURL
|
|
100
100
|
})
|
|
101
101
|
});
|
|
@@ -104,7 +104,7 @@ export default function PostFeaturedImageEdit({
|
|
|
104
104
|
const blockEditingMode = useBlockEditingMode();
|
|
105
105
|
const placeholder = content => {
|
|
106
106
|
return createElement(Placeholder, {
|
|
107
|
-
className:
|
|
107
|
+
className: clsx('block-editor-media-placeholder', borderProps.className),
|
|
108
108
|
withIllustration: true,
|
|
109
109
|
style: {
|
|
110
110
|
height: !!aspectRatio && '100%',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["classnames","isBlobURL","useEntityProp","store","coreStore","useSelect","useDispatch","MenuItem","ToggleControl","PanelBody","Placeholder","Button","Spinner","TextControl","InspectorControls","BlockControls","MediaPlaceholder","MediaReplaceFlow","useBlockProps","__experimentalUseBorderProps","useBorderProps","__experimentalGetShadowClassesAndStyles","getShadowClassesAndStyles","useBlockEditingMode","useMemo","useEffect","useState","__","sprintf","upload","noticesStore","DimensionControls","OverlayControls","Overlay","ALLOWED_MEDIA_TYPES","getMediaSourceUrlBySizeSlug","media","slug","media_details","sizes","source_url","disabledClickProps","onClick","event","preventDefault","PostFeaturedImageEdit","clientId","attributes","setAttributes","context","postId","postType","postTypeSlug","queryId","isDescendentOfQueryLoop","Number","isFinite","isLink","aspectRatio","height","width","scale","sizeSlug","rel","linkTarget","useFirstImageFromPost","temporaryURL","setTemporaryURL","storedFeaturedImage","setFeaturedImage","postContent","featuredImage","imageOpener","exec","imageId","groups","attrs","JSON","parse","id","postPermalink","select","getMedia","getPostType","getEditedEntityRecord","link","mediaUrl","blockProps","style","className","borderProps","shadowProps","blockEditingMode","placeholder","content","createElement","withIllustration","onSelectImage","value","url","createErrorNotice","onUploadError","message","type","controls","Fragment","group","title","__nextHasNoMarginBottom","label","labels","singular_name","onChange","checked","newRel","image","href","target","imageStyles","objectFit","onSelect","accept","allowedTypes","onError","mediaLibraryButton","open","icon","variant","showTooltip","tooltipPosition","src","alt","alt_text","mediaId","mediaURL"],"sources":["@wordpress/block-library/src/post-featured-image/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { isBlobURL } from '@wordpress/blob';\nimport { useEntityProp, store as coreStore } from '@wordpress/core-data';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport {\n\tMenuItem,\n\tToggleControl,\n\tPanelBody,\n\tPlaceholder,\n\tButton,\n\tSpinner,\n\tTextControl,\n} from '@wordpress/components';\nimport {\n\tInspectorControls,\n\tBlockControls,\n\tMediaPlaceholder,\n\tMediaReplaceFlow,\n\tuseBlockProps,\n\t__experimentalUseBorderProps as useBorderProps,\n\t__experimentalGetShadowClassesAndStyles as getShadowClassesAndStyles,\n\tuseBlockEditingMode,\n} from '@wordpress/block-editor';\nimport { useMemo, useEffect, useState } from '@wordpress/element';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { upload } from '@wordpress/icons';\nimport { store as noticesStore } from '@wordpress/notices';\n\n/**\n * Internal dependencies\n */\nimport DimensionControls from './dimension-controls';\nimport OverlayControls from './overlay-controls';\nimport Overlay from './overlay';\n\nconst ALLOWED_MEDIA_TYPES = [ 'image' ];\n\nfunction getMediaSourceUrlBySizeSlug( media, slug ) {\n\treturn (\n\t\tmedia?.media_details?.sizes?.[ slug ]?.source_url || media?.source_url\n\t);\n}\n\nconst disabledClickProps = {\n\tonClick: ( event ) => event.preventDefault(),\n\t'aria-disabled': true,\n};\n\nexport default function PostFeaturedImageEdit( {\n\tclientId,\n\tattributes,\n\tsetAttributes,\n\tcontext: { postId, postType: postTypeSlug, queryId },\n} ) {\n\tconst isDescendentOfQueryLoop = Number.isFinite( queryId );\n\tconst {\n\t\tisLink,\n\t\taspectRatio,\n\t\theight,\n\t\twidth,\n\t\tscale,\n\t\tsizeSlug,\n\t\trel,\n\t\tlinkTarget,\n\t\tuseFirstImageFromPost,\n\t} = attributes;\n\tconst [ temporaryURL, setTemporaryURL ] = useState();\n\n\tconst [ storedFeaturedImage, setFeaturedImage ] = useEntityProp(\n\t\t'postType',\n\t\tpostTypeSlug,\n\t\t'featured_media',\n\t\tpostId\n\t);\n\n\t// Fallback to post content if no featured image is set.\n\t// This is needed for the \"Use first image from post\" option.\n\tconst [ postContent ] = useEntityProp(\n\t\t'postType',\n\t\tpostTypeSlug,\n\t\t'content',\n\t\tpostId\n\t);\n\n\tconst featuredImage = useMemo( () => {\n\t\tif ( storedFeaturedImage ) {\n\t\t\treturn storedFeaturedImage;\n\t\t}\n\n\t\tif ( ! useFirstImageFromPost ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst imageOpener =\n\t\t\t/<!--\\s+wp:(?:core\\/)?image\\s+(?<attrs>{(?:(?:[^}]+|}+(?=})|(?!}\\s+\\/?-->).)*)?}\\s+)?-->/.exec(\n\t\t\t\tpostContent\n\t\t\t);\n\t\tconst imageId =\n\t\t\timageOpener?.groups?.attrs &&\n\t\t\tJSON.parse( imageOpener.groups.attrs )?.id;\n\t\treturn imageId;\n\t}, [ storedFeaturedImage, useFirstImageFromPost, postContent ] );\n\n\tconst { media, postType, postPermalink } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getMedia, getPostType, getEditedEntityRecord } =\n\t\t\t\tselect( coreStore );\n\t\t\treturn {\n\t\t\t\tmedia:\n\t\t\t\t\tfeaturedImage &&\n\t\t\t\t\tgetMedia( featuredImage, {\n\t\t\t\t\t\tcontext: 'view',\n\t\t\t\t\t} ),\n\t\t\t\tpostType: postTypeSlug && getPostType( postTypeSlug ),\n\t\t\t\tpostPermalink: getEditedEntityRecord(\n\t\t\t\t\t'postType',\n\t\t\t\t\tpostTypeSlug,\n\t\t\t\t\tpostId\n\t\t\t\t)?.link,\n\t\t\t};\n\t\t},\n\t\t[ featuredImage, postTypeSlug, postId ]\n\t);\n\n\tconst mediaUrl = getMediaSourceUrlBySizeSlug( media, sizeSlug );\n\n\tconst blockProps = useBlockProps( {\n\t\tstyle: { width, height, aspectRatio },\n\t\tclassName: classnames( {\n\t\t\t'is-transient': temporaryURL,\n\t\t} ),\n\t} );\n\tconst borderProps = useBorderProps( attributes );\n\tconst shadowProps = getShadowClassesAndStyles( attributes );\n\tconst blockEditingMode = useBlockEditingMode();\n\n\tconst placeholder = ( content ) => {\n\t\treturn (\n\t\t\t<Placeholder\n\t\t\t\tclassName={ classnames(\n\t\t\t\t\t'block-editor-media-placeholder',\n\t\t\t\t\tborderProps.className\n\t\t\t\t) }\n\t\t\t\twithIllustration\n\t\t\t\tstyle={ {\n\t\t\t\t\theight: !! aspectRatio && '100%',\n\t\t\t\t\twidth: !! aspectRatio && '100%',\n\t\t\t\t\t...borderProps.style,\n\t\t\t\t\t...shadowProps.style,\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t{ content }\n\t\t\t</Placeholder>\n\t\t);\n\t};\n\n\tconst onSelectImage = ( value ) => {\n\t\tif ( value?.id ) {\n\t\t\tsetFeaturedImage( value.id );\n\t\t}\n\n\t\tif ( value?.url && isBlobURL( value.url ) ) {\n\t\t\tsetTemporaryURL( value.url );\n\t\t}\n\t};\n\n\t// Reset temporary url when media is available.\n\tuseEffect( () => {\n\t\tif ( mediaUrl && temporaryURL ) {\n\t\t\tsetTemporaryURL();\n\t\t}\n\t}, [ mediaUrl, temporaryURL ] );\n\n\tconst { createErrorNotice } = useDispatch( noticesStore );\n\tconst onUploadError = ( message ) => {\n\t\tcreateErrorNotice( message, { type: 'snackbar' } );\n\t\tsetTemporaryURL();\n\t};\n\n\tconst controls = blockEditingMode === 'default' && (\n\t\t<>\n\t\t\t<InspectorControls group=\"color\">\n\t\t\t\t<OverlayControls\n\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t/>\n\t\t\t</InspectorControls>\n\t\t\t<InspectorControls group=\"dimensions\">\n\t\t\t\t<DimensionControls\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\tmedia={ media }\n\t\t\t\t/>\n\t\t\t</InspectorControls>\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={\n\t\t\t\t\t\t\tpostType?.labels.singular_name\n\t\t\t\t\t\t\t\t? sprintf(\n\t\t\t\t\t\t\t\t\t\t// translators: %s: Name of the post type e.g: \"Page\".\n\t\t\t\t\t\t\t\t\t\t__( 'Link to %s' ),\n\t\t\t\t\t\t\t\t\t\tpostType.labels.singular_name\n\t\t\t\t\t\t\t\t )\n\t\t\t\t\t\t\t\t: __( 'Link to post' )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tonChange={ () => setAttributes( { isLink: ! isLink } ) }\n\t\t\t\t\t\tchecked={ isLink }\n\t\t\t\t\t/>\n\t\t\t\t\t{ isLink && (\n\t\t\t\t\t\t<>\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={ __( 'Open in new tab' ) }\n\t\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\tlinkTarget: value ? '_blank' : '_self',\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\tchecked={ linkTarget === '_blank' }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<TextControl\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\tlabel={ __( 'Link rel' ) }\n\t\t\t\t\t\t\t\tvalue={ rel }\n\t\t\t\t\t\t\t\tonChange={ ( newRel ) =>\n\t\t\t\t\t\t\t\t\tsetAttributes( { rel: newRel } )\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) }\n\t\t\t\t</PanelBody>\n\t\t\t</InspectorControls>\n\t\t</>\n\t);\n\n\tlet image;\n\n\t/**\n\t * A Post Featured Image block should not have image replacement\n\t * or upload options in the following cases:\n\t * - Is placed in a Query Loop. This is a conscious decision to\n\t * prevent content editing of different posts in Query Loop, and\n\t * this could change in the future.\n\t * - Is in a context where it does not have a postId (for example\n\t * in a template or template part).\n\t */\n\tif ( ! featuredImage && ( isDescendentOfQueryLoop || ! postId ) ) {\n\t\treturn (\n\t\t\t<>\n\t\t\t\t{ controls }\n\t\t\t\t<div { ...blockProps }>\n\t\t\t\t\t{ !! isLink ? (\n\t\t\t\t\t\t<a\n\t\t\t\t\t\t\thref={ postPermalink }\n\t\t\t\t\t\t\ttarget={ linkTarget }\n\t\t\t\t\t\t\t{ ...disabledClickProps }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ placeholder() }\n\t\t\t\t\t\t</a>\n\t\t\t\t\t) : (\n\t\t\t\t\t\tplaceholder()\n\t\t\t\t\t) }\n\t\t\t\t\t<Overlay\n\t\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t</>\n\t\t);\n\t}\n\n\tconst label = __( 'Add a featured image' );\n\tconst imageStyles = {\n\t\t...borderProps.style,\n\t\t...shadowProps.style,\n\t\theight: aspectRatio ? '100%' : height,\n\t\twidth: !! aspectRatio && '100%',\n\t\tobjectFit: !! ( height || aspectRatio ) && scale,\n\t};\n\n\t/**\n\t * When the post featured image block is placed in a context where:\n\t * - It has a postId (for example in a single post)\n\t * - It is not inside a query loop\n\t * - It has no image assigned yet\n\t * Then display the placeholder with the image upload option.\n\t */\n\tif ( ! featuredImage && ! temporaryURL ) {\n\t\timage = (\n\t\t\t<MediaPlaceholder\n\t\t\t\tonSelect={ onSelectImage }\n\t\t\t\taccept=\"image/*\"\n\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\tonError={ onUploadError }\n\t\t\t\tplaceholder={ placeholder }\n\t\t\t\tmediaLibraryButton={ ( { open } ) => {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\ticon={ upload }\n\t\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\t\tlabel={ label }\n\t\t\t\t\t\t\tshowTooltip\n\t\t\t\t\t\t\ttooltipPosition=\"top center\"\n\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\topen();\n\t\t\t\t\t\t\t} }\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} else {\n\t\t// We have a Featured image so show a Placeholder if is loading.\n\t\timage =\n\t\t\t! media && ! temporaryURL ? (\n\t\t\t\tplaceholder()\n\t\t\t) : (\n\t\t\t\t<>\n\t\t\t\t\t<img\n\t\t\t\t\t\tclassName={ borderProps.className }\n\t\t\t\t\t\tsrc={ temporaryURL || mediaUrl }\n\t\t\t\t\t\talt={\n\t\t\t\t\t\t\tmedia && media?.alt_text\n\t\t\t\t\t\t\t\t? sprintf(\n\t\t\t\t\t\t\t\t\t\t// translators: %s: The image's alt text.\n\t\t\t\t\t\t\t\t\t\t__( 'Featured image: %s' ),\n\t\t\t\t\t\t\t\t\t\tmedia.alt_text\n\t\t\t\t\t\t\t\t )\n\t\t\t\t\t\t\t\t: __( 'Featured image' )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tstyle={ imageStyles }\n\t\t\t\t\t/>\n\t\t\t\t\t{ temporaryURL && <Spinner /> }\n\t\t\t\t</>\n\t\t\t);\n\t}\n\n\t/**\n\t * When the post featured image block:\n\t * - Has an image assigned\n\t * - Is not inside a query loop\n\t * Then display the image and the image replacement option.\n\t */\n\treturn (\n\t\t<>\n\t\t\t{ ! temporaryURL && controls }\n\t\t\t{ !! media && ! isDescendentOfQueryLoop && (\n\t\t\t\t<BlockControls group=\"other\">\n\t\t\t\t\t<MediaReplaceFlow\n\t\t\t\t\t\tmediaId={ featuredImage }\n\t\t\t\t\t\tmediaURL={ mediaUrl }\n\t\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\t\taccept=\"image/*\"\n\t\t\t\t\t\tonSelect={ onSelectImage }\n\t\t\t\t\t\tonError={ onUploadError }\n\t\t\t\t\t>\n\t\t\t\t\t\t<MenuItem onClick={ () => setFeaturedImage( 0 ) }>\n\t\t\t\t\t\t\t{ __( 'Reset' ) }\n\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t</MediaReplaceFlow>\n\t\t\t\t</BlockControls>\n\t\t\t) }\n\t\t\t<figure { ...blockProps }>\n\t\t\t\t{ /* If the featured image is linked, wrap in an <a /> tag to trigger any inherited link element styles */ }\n\t\t\t\t{ !! isLink ? (\n\t\t\t\t\t<a\n\t\t\t\t\t\thref={ postPermalink }\n\t\t\t\t\t\ttarget={ linkTarget }\n\t\t\t\t\t\t{ ...disabledClickProps }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ image }\n\t\t\t\t\t</a>\n\t\t\t\t) : (\n\t\t\t\t\timage\n\t\t\t\t) }\n\t\t\t\t<Overlay\n\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t/>\n\t\t\t</figure>\n\t\t</>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["clsx","isBlobURL","useEntityProp","store","coreStore","useSelect","useDispatch","MenuItem","ToggleControl","PanelBody","Placeholder","Button","Spinner","TextControl","InspectorControls","BlockControls","MediaPlaceholder","MediaReplaceFlow","useBlockProps","__experimentalUseBorderProps","useBorderProps","__experimentalGetShadowClassesAndStyles","getShadowClassesAndStyles","useBlockEditingMode","useMemo","useEffect","useState","__","sprintf","upload","noticesStore","DimensionControls","OverlayControls","Overlay","ALLOWED_MEDIA_TYPES","getMediaSourceUrlBySizeSlug","media","slug","media_details","sizes","source_url","disabledClickProps","onClick","event","preventDefault","PostFeaturedImageEdit","clientId","attributes","setAttributes","context","postId","postType","postTypeSlug","queryId","isDescendentOfQueryLoop","Number","isFinite","isLink","aspectRatio","height","width","scale","sizeSlug","rel","linkTarget","useFirstImageFromPost","temporaryURL","setTemporaryURL","storedFeaturedImage","setFeaturedImage","postContent","featuredImage","imageOpener","exec","imageId","groups","attrs","JSON","parse","id","postPermalink","select","getMedia","getPostType","getEditedEntityRecord","link","mediaUrl","blockProps","style","className","borderProps","shadowProps","blockEditingMode","placeholder","content","createElement","withIllustration","onSelectImage","value","url","createErrorNotice","onUploadError","message","type","controls","Fragment","group","title","__nextHasNoMarginBottom","label","labels","singular_name","onChange","checked","newRel","image","href","target","imageStyles","objectFit","onSelect","accept","allowedTypes","onError","mediaLibraryButton","open","icon","variant","showTooltip","tooltipPosition","src","alt","alt_text","mediaId","mediaURL"],"sources":["@wordpress/block-library/src/post-featured-image/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { isBlobURL } from '@wordpress/blob';\nimport { useEntityProp, store as coreStore } from '@wordpress/core-data';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport {\n\tMenuItem,\n\tToggleControl,\n\tPanelBody,\n\tPlaceholder,\n\tButton,\n\tSpinner,\n\tTextControl,\n} from '@wordpress/components';\nimport {\n\tInspectorControls,\n\tBlockControls,\n\tMediaPlaceholder,\n\tMediaReplaceFlow,\n\tuseBlockProps,\n\t__experimentalUseBorderProps as useBorderProps,\n\t__experimentalGetShadowClassesAndStyles as getShadowClassesAndStyles,\n\tuseBlockEditingMode,\n} from '@wordpress/block-editor';\nimport { useMemo, useEffect, useState } from '@wordpress/element';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { upload } from '@wordpress/icons';\nimport { store as noticesStore } from '@wordpress/notices';\n\n/**\n * Internal dependencies\n */\nimport DimensionControls from './dimension-controls';\nimport OverlayControls from './overlay-controls';\nimport Overlay from './overlay';\n\nconst ALLOWED_MEDIA_TYPES = [ 'image' ];\n\nfunction getMediaSourceUrlBySizeSlug( media, slug ) {\n\treturn (\n\t\tmedia?.media_details?.sizes?.[ slug ]?.source_url || media?.source_url\n\t);\n}\n\nconst disabledClickProps = {\n\tonClick: ( event ) => event.preventDefault(),\n\t'aria-disabled': true,\n};\n\nexport default function PostFeaturedImageEdit( {\n\tclientId,\n\tattributes,\n\tsetAttributes,\n\tcontext: { postId, postType: postTypeSlug, queryId },\n} ) {\n\tconst isDescendentOfQueryLoop = Number.isFinite( queryId );\n\tconst {\n\t\tisLink,\n\t\taspectRatio,\n\t\theight,\n\t\twidth,\n\t\tscale,\n\t\tsizeSlug,\n\t\trel,\n\t\tlinkTarget,\n\t\tuseFirstImageFromPost,\n\t} = attributes;\n\tconst [ temporaryURL, setTemporaryURL ] = useState();\n\n\tconst [ storedFeaturedImage, setFeaturedImage ] = useEntityProp(\n\t\t'postType',\n\t\tpostTypeSlug,\n\t\t'featured_media',\n\t\tpostId\n\t);\n\n\t// Fallback to post content if no featured image is set.\n\t// This is needed for the \"Use first image from post\" option.\n\tconst [ postContent ] = useEntityProp(\n\t\t'postType',\n\t\tpostTypeSlug,\n\t\t'content',\n\t\tpostId\n\t);\n\n\tconst featuredImage = useMemo( () => {\n\t\tif ( storedFeaturedImage ) {\n\t\t\treturn storedFeaturedImage;\n\t\t}\n\n\t\tif ( ! useFirstImageFromPost ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst imageOpener =\n\t\t\t/<!--\\s+wp:(?:core\\/)?image\\s+(?<attrs>{(?:(?:[^}]+|}+(?=})|(?!}\\s+\\/?-->).)*)?}\\s+)?-->/.exec(\n\t\t\t\tpostContent\n\t\t\t);\n\t\tconst imageId =\n\t\t\timageOpener?.groups?.attrs &&\n\t\t\tJSON.parse( imageOpener.groups.attrs )?.id;\n\t\treturn imageId;\n\t}, [ storedFeaturedImage, useFirstImageFromPost, postContent ] );\n\n\tconst { media, postType, postPermalink } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getMedia, getPostType, getEditedEntityRecord } =\n\t\t\t\tselect( coreStore );\n\t\t\treturn {\n\t\t\t\tmedia:\n\t\t\t\t\tfeaturedImage &&\n\t\t\t\t\tgetMedia( featuredImage, {\n\t\t\t\t\t\tcontext: 'view',\n\t\t\t\t\t} ),\n\t\t\t\tpostType: postTypeSlug && getPostType( postTypeSlug ),\n\t\t\t\tpostPermalink: getEditedEntityRecord(\n\t\t\t\t\t'postType',\n\t\t\t\t\tpostTypeSlug,\n\t\t\t\t\tpostId\n\t\t\t\t)?.link,\n\t\t\t};\n\t\t},\n\t\t[ featuredImage, postTypeSlug, postId ]\n\t);\n\n\tconst mediaUrl = getMediaSourceUrlBySizeSlug( media, sizeSlug );\n\n\tconst blockProps = useBlockProps( {\n\t\tstyle: { width, height, aspectRatio },\n\t\tclassName: clsx( {\n\t\t\t'is-transient': temporaryURL,\n\t\t} ),\n\t} );\n\tconst borderProps = useBorderProps( attributes );\n\tconst shadowProps = getShadowClassesAndStyles( attributes );\n\tconst blockEditingMode = useBlockEditingMode();\n\n\tconst placeholder = ( content ) => {\n\t\treturn (\n\t\t\t<Placeholder\n\t\t\t\tclassName={ clsx(\n\t\t\t\t\t'block-editor-media-placeholder',\n\t\t\t\t\tborderProps.className\n\t\t\t\t) }\n\t\t\t\twithIllustration\n\t\t\t\tstyle={ {\n\t\t\t\t\theight: !! aspectRatio && '100%',\n\t\t\t\t\twidth: !! aspectRatio && '100%',\n\t\t\t\t\t...borderProps.style,\n\t\t\t\t\t...shadowProps.style,\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t{ content }\n\t\t\t</Placeholder>\n\t\t);\n\t};\n\n\tconst onSelectImage = ( value ) => {\n\t\tif ( value?.id ) {\n\t\t\tsetFeaturedImage( value.id );\n\t\t}\n\n\t\tif ( value?.url && isBlobURL( value.url ) ) {\n\t\t\tsetTemporaryURL( value.url );\n\t\t}\n\t};\n\n\t// Reset temporary url when media is available.\n\tuseEffect( () => {\n\t\tif ( mediaUrl && temporaryURL ) {\n\t\t\tsetTemporaryURL();\n\t\t}\n\t}, [ mediaUrl, temporaryURL ] );\n\n\tconst { createErrorNotice } = useDispatch( noticesStore );\n\tconst onUploadError = ( message ) => {\n\t\tcreateErrorNotice( message, { type: 'snackbar' } );\n\t\tsetTemporaryURL();\n\t};\n\n\tconst controls = blockEditingMode === 'default' && (\n\t\t<>\n\t\t\t<InspectorControls group=\"color\">\n\t\t\t\t<OverlayControls\n\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t/>\n\t\t\t</InspectorControls>\n\t\t\t<InspectorControls group=\"dimensions\">\n\t\t\t\t<DimensionControls\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\tmedia={ media }\n\t\t\t\t/>\n\t\t\t</InspectorControls>\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={\n\t\t\t\t\t\t\tpostType?.labels.singular_name\n\t\t\t\t\t\t\t\t? sprintf(\n\t\t\t\t\t\t\t\t\t\t// translators: %s: Name of the post type e.g: \"Page\".\n\t\t\t\t\t\t\t\t\t\t__( 'Link to %s' ),\n\t\t\t\t\t\t\t\t\t\tpostType.labels.singular_name\n\t\t\t\t\t\t\t\t )\n\t\t\t\t\t\t\t\t: __( 'Link to post' )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tonChange={ () => setAttributes( { isLink: ! isLink } ) }\n\t\t\t\t\t\tchecked={ isLink }\n\t\t\t\t\t/>\n\t\t\t\t\t{ isLink && (\n\t\t\t\t\t\t<>\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={ __( 'Open in new tab' ) }\n\t\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\tlinkTarget: value ? '_blank' : '_self',\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\tchecked={ linkTarget === '_blank' }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<TextControl\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\tlabel={ __( 'Link rel' ) }\n\t\t\t\t\t\t\t\tvalue={ rel }\n\t\t\t\t\t\t\t\tonChange={ ( newRel ) =>\n\t\t\t\t\t\t\t\t\tsetAttributes( { rel: newRel } )\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) }\n\t\t\t\t</PanelBody>\n\t\t\t</InspectorControls>\n\t\t</>\n\t);\n\n\tlet image;\n\n\t/**\n\t * A Post Featured Image block should not have image replacement\n\t * or upload options in the following cases:\n\t * - Is placed in a Query Loop. This is a conscious decision to\n\t * prevent content editing of different posts in Query Loop, and\n\t * this could change in the future.\n\t * - Is in a context where it does not have a postId (for example\n\t * in a template or template part).\n\t */\n\tif ( ! featuredImage && ( isDescendentOfQueryLoop || ! postId ) ) {\n\t\treturn (\n\t\t\t<>\n\t\t\t\t{ controls }\n\t\t\t\t<div { ...blockProps }>\n\t\t\t\t\t{ !! isLink ? (\n\t\t\t\t\t\t<a\n\t\t\t\t\t\t\thref={ postPermalink }\n\t\t\t\t\t\t\ttarget={ linkTarget }\n\t\t\t\t\t\t\t{ ...disabledClickProps }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ placeholder() }\n\t\t\t\t\t\t</a>\n\t\t\t\t\t) : (\n\t\t\t\t\t\tplaceholder()\n\t\t\t\t\t) }\n\t\t\t\t\t<Overlay\n\t\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t</>\n\t\t);\n\t}\n\n\tconst label = __( 'Add a featured image' );\n\tconst imageStyles = {\n\t\t...borderProps.style,\n\t\t...shadowProps.style,\n\t\theight: aspectRatio ? '100%' : height,\n\t\twidth: !! aspectRatio && '100%',\n\t\tobjectFit: !! ( height || aspectRatio ) && scale,\n\t};\n\n\t/**\n\t * When the post featured image block is placed in a context where:\n\t * - It has a postId (for example in a single post)\n\t * - It is not inside a query loop\n\t * - It has no image assigned yet\n\t * Then display the placeholder with the image upload option.\n\t */\n\tif ( ! featuredImage && ! temporaryURL ) {\n\t\timage = (\n\t\t\t<MediaPlaceholder\n\t\t\t\tonSelect={ onSelectImage }\n\t\t\t\taccept=\"image/*\"\n\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\tonError={ onUploadError }\n\t\t\t\tplaceholder={ placeholder }\n\t\t\t\tmediaLibraryButton={ ( { open } ) => {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\ticon={ upload }\n\t\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\t\tlabel={ label }\n\t\t\t\t\t\t\tshowTooltip\n\t\t\t\t\t\t\ttooltipPosition=\"top center\"\n\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\topen();\n\t\t\t\t\t\t\t} }\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} else {\n\t\t// We have a Featured image so show a Placeholder if is loading.\n\t\timage =\n\t\t\t! media && ! temporaryURL ? (\n\t\t\t\tplaceholder()\n\t\t\t) : (\n\t\t\t\t<>\n\t\t\t\t\t<img\n\t\t\t\t\t\tclassName={ borderProps.className }\n\t\t\t\t\t\tsrc={ temporaryURL || mediaUrl }\n\t\t\t\t\t\talt={\n\t\t\t\t\t\t\tmedia && media?.alt_text\n\t\t\t\t\t\t\t\t? sprintf(\n\t\t\t\t\t\t\t\t\t\t// translators: %s: The image's alt text.\n\t\t\t\t\t\t\t\t\t\t__( 'Featured image: %s' ),\n\t\t\t\t\t\t\t\t\t\tmedia.alt_text\n\t\t\t\t\t\t\t\t )\n\t\t\t\t\t\t\t\t: __( 'Featured image' )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tstyle={ imageStyles }\n\t\t\t\t\t/>\n\t\t\t\t\t{ temporaryURL && <Spinner /> }\n\t\t\t\t</>\n\t\t\t);\n\t}\n\n\t/**\n\t * When the post featured image block:\n\t * - Has an image assigned\n\t * - Is not inside a query loop\n\t * Then display the image and the image replacement option.\n\t */\n\treturn (\n\t\t<>\n\t\t\t{ ! temporaryURL && controls }\n\t\t\t{ !! media && ! isDescendentOfQueryLoop && (\n\t\t\t\t<BlockControls group=\"other\">\n\t\t\t\t\t<MediaReplaceFlow\n\t\t\t\t\t\tmediaId={ featuredImage }\n\t\t\t\t\t\tmediaURL={ mediaUrl }\n\t\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\t\taccept=\"image/*\"\n\t\t\t\t\t\tonSelect={ onSelectImage }\n\t\t\t\t\t\tonError={ onUploadError }\n\t\t\t\t\t>\n\t\t\t\t\t\t<MenuItem onClick={ () => setFeaturedImage( 0 ) }>\n\t\t\t\t\t\t\t{ __( 'Reset' ) }\n\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t</MediaReplaceFlow>\n\t\t\t\t</BlockControls>\n\t\t\t) }\n\t\t\t<figure { ...blockProps }>\n\t\t\t\t{ /* If the featured image is linked, wrap in an <a /> tag to trigger any inherited link element styles */ }\n\t\t\t\t{ !! isLink ? (\n\t\t\t\t\t<a\n\t\t\t\t\t\thref={ postPermalink }\n\t\t\t\t\t\ttarget={ linkTarget }\n\t\t\t\t\t\t{ ...disabledClickProps }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ image }\n\t\t\t\t\t</a>\n\t\t\t\t) : (\n\t\t\t\t\timage\n\t\t\t\t) }\n\t\t\t\t<Overlay\n\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t/>\n\t\t\t</figure>\n\t\t</>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -2,7 +2,7 @@ import { createElement } from "react";
|
|
|
2
2
|
/**
|
|
3
3
|
* External dependencies
|
|
4
4
|
*/
|
|
5
|
-
import
|
|
5
|
+
import clsx from 'clsx';
|
|
6
6
|
|
|
7
7
|
/**
|
|
8
8
|
* WordPress dependencies
|
|
@@ -37,7 +37,7 @@ const Overlay = ({
|
|
|
37
37
|
}
|
|
38
38
|
return createElement("span", {
|
|
39
39
|
"aria-hidden": "true",
|
|
40
|
-
className:
|
|
40
|
+
className: clsx('wp-block-post-featured-image__overlay', dimRatioToClass(dimRatio), {
|
|
41
41
|
[overlayColor.class]: overlayColor.class,
|
|
42
42
|
'has-background-dim': dimRatio !== undefined,
|
|
43
43
|
'has-background-gradient': gradientValue,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["
|
|
1
|
+
{"version":3,"names":["clsx","withColors","__experimentalUseGradient","__experimentalUseMultipleOriginColorsAndGradients","useMultipleOriginColorsAndGradients","__experimentalUseBorderProps","useBorderProps","compose","dimRatioToClass","Overlay","attributes","overlayColor","dimRatio","gradientClass","gradientValue","colorGradientSettings","borderProps","overlayStyles","backgroundColor","color","backgroundImage","style","hasColorsOrGradients","createElement","className","class","undefined"],"sources":["@wordpress/block-library/src/post-featured-image/overlay.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport {\n\twithColors,\n\t__experimentalUseGradient,\n\t__experimentalUseMultipleOriginColorsAndGradients as useMultipleOriginColorsAndGradients,\n\t__experimentalUseBorderProps as useBorderProps,\n} from '@wordpress/block-editor';\nimport { compose } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport { dimRatioToClass } from './utils';\n\nconst Overlay = ( { attributes, overlayColor } ) => {\n\tconst { dimRatio } = attributes;\n\tconst { gradientClass, gradientValue } = __experimentalUseGradient();\n\tconst colorGradientSettings = useMultipleOriginColorsAndGradients();\n\n\tconst borderProps = useBorderProps( attributes );\n\tconst overlayStyles = {\n\t\tbackgroundColor: overlayColor.color,\n\t\tbackgroundImage: gradientValue,\n\t\t...borderProps.style,\n\t};\n\n\tif ( ! colorGradientSettings.hasColorsOrGradients || ! dimRatio ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<span\n\t\t\taria-hidden=\"true\"\n\t\t\tclassName={ clsx(\n\t\t\t\t'wp-block-post-featured-image__overlay',\n\t\t\t\tdimRatioToClass( dimRatio ),\n\t\t\t\t{\n\t\t\t\t\t[ overlayColor.class ]: overlayColor.class,\n\t\t\t\t\t'has-background-dim': dimRatio !== undefined,\n\t\t\t\t\t'has-background-gradient': gradientValue,\n\t\t\t\t\t[ gradientClass ]: gradientClass,\n\t\t\t\t},\n\t\t\t\tborderProps.className\n\t\t\t) }\n\t\t\tstyle={ overlayStyles }\n\t\t/>\n\t);\n};\n\nexport default compose( [\n\twithColors( { overlayColor: 'background-color' } ),\n] )( Overlay );\n"],"mappings":";AAAA;AACA;AACA;AACA,OAAOA,IAAI,MAAM,MAAM;;AAEvB;AACA;AACA;AACA,SACCC,UAAU,EACVC,yBAAyB,EACzBC,iDAAiD,IAAIC,mCAAmC,EACxFC,4BAA4B,IAAIC,cAAc,QACxC,yBAAyB;AAChC,SAASC,OAAO,QAAQ,oBAAoB;;AAE5C;AACA;AACA;AACA,SAASC,eAAe,QAAQ,SAAS;AAEzC,MAAMC,OAAO,GAAGA,CAAE;EAAEC,UAAU;EAAEC;AAAa,CAAC,KAAM;EACnD,MAAM;IAAEC;EAAS,CAAC,GAAGF,UAAU;EAC/B,MAAM;IAAEG,aAAa;IAAEC;EAAc,CAAC,GAAGZ,yBAAyB,CAAC,CAAC;EACpE,MAAMa,qBAAqB,GAAGX,mCAAmC,CAAC,CAAC;EAEnE,MAAMY,WAAW,GAAGV,cAAc,CAAEI,UAAW,CAAC;EAChD,MAAMO,aAAa,GAAG;IACrBC,eAAe,EAAEP,YAAY,CAACQ,KAAK;IACnCC,eAAe,EAAEN,aAAa;IAC9B,GAAGE,WAAW,CAACK;EAChB,CAAC;EAED,IAAK,CAAEN,qBAAqB,CAACO,oBAAoB,IAAI,CAAEV,QAAQ,EAAG;IACjE,OAAO,IAAI;EACZ;EAEA,OACCW,aAAA;IACC,eAAY,MAAM;IAClBC,SAAS,EAAGxB,IAAI,CACf,uCAAuC,EACvCQ,eAAe,CAAEI,QAAS,CAAC,EAC3B;MACC,CAAED,YAAY,CAACc,KAAK,GAAId,YAAY,CAACc,KAAK;MAC1C,oBAAoB,EAAEb,QAAQ,KAAKc,SAAS;MAC5C,yBAAyB,EAAEZ,aAAa;MACxC,CAAED,aAAa,GAAIA;IACpB,CAAC,EACDG,WAAW,CAACQ,SACb,CAAG;IACHH,KAAK,EAAGJ;EAAe,CACvB,CAAC;AAEJ,CAAC;AAED,eAAeV,OAAO,CAAE,CACvBN,UAAU,CAAE;EAAEU,YAAY,EAAE;AAAmB,CAAE,CAAC,CACjD,CAAC,CAAEF,OAAQ,CAAC","ignoreList":[]}
|
|
@@ -2,7 +2,7 @@ import { createElement, Fragment } from "react";
|
|
|
2
2
|
/**
|
|
3
3
|
* External dependencies
|
|
4
4
|
*/
|
|
5
|
-
import
|
|
5
|
+
import clsx from 'clsx';
|
|
6
6
|
|
|
7
7
|
/**
|
|
8
8
|
* WordPress dependencies
|
|
@@ -41,7 +41,7 @@ export default function PostNavigationLinkEdit({
|
|
|
41
41
|
}
|
|
42
42
|
const ariaLabel = isNext ? __('Next post') : __('Previous post');
|
|
43
43
|
const blockProps = useBlockProps({
|
|
44
|
-
className:
|
|
44
|
+
className: clsx({
|
|
45
45
|
[`has-text-align-${textAlign}`]: textAlign
|
|
46
46
|
})
|
|
47
47
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["classnames","__experimentalToggleGroupControl","ToggleGroupControl","__experimentalToggleGroupControlOption","ToggleGroupControlOption","ToggleControl","SelectControl","PanelBody","InspectorControls","RichText","BlockControls","AlignmentToolbar","useBlockProps","__","_x","useSelect","store","coreStore","PostNavigationLinkEdit","context","postType","attributes","type","label","showTitle","textAlign","linkLabel","arrow","taxonomy","setAttributes","isNext","placeholder","arrowMap","none","chevron","displayArrow","ariaLabel","blockProps","className","taxonomies","select","getTaxonomies","filteredTaxonomies","per_page","getTaxonomyOptions","selectOption","value","taxonomyOptions","filter","visibility","publicly_queryable","map","item","slug","name","createElement","Fragment","__nextHasNoMarginBottom","help","checked","onChange","isBlock","group","options","nextAlign","tagName","identifier","allowedFormats","newLabel","href","onClick","event","preventDefault"],"sources":["@wordpress/block-library/src/post-navigation-link/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalToggleGroupControl as ToggleGroupControl,\n\t__experimentalToggleGroupControlOption as ToggleGroupControlOption,\n\tToggleControl,\n\tSelectControl,\n\tPanelBody,\n} from '@wordpress/components';\nimport {\n\tInspectorControls,\n\tRichText,\n\tBlockControls,\n\tAlignmentToolbar,\n\tuseBlockProps,\n} from '@wordpress/block-editor';\nimport { __, _x } from '@wordpress/i18n';\nimport { useSelect } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\n\nexport default function PostNavigationLinkEdit( {\n\tcontext: { postType },\n\tattributes: {\n\t\ttype,\n\t\tlabel,\n\t\tshowTitle,\n\t\ttextAlign,\n\t\tlinkLabel,\n\t\tarrow,\n\t\ttaxonomy,\n\t},\n\tsetAttributes,\n} ) {\n\tconst isNext = type === 'next';\n\tlet placeholder = isNext ? __( 'Next' ) : __( 'Previous' );\n\n\tconst arrowMap = {\n\t\tnone: '',\n\t\tarrow: isNext ? '→' : '←',\n\t\tchevron: isNext ? '»' : '«',\n\t};\n\n\tconst displayArrow = arrowMap[ arrow ];\n\n\tif ( showTitle ) {\n\t\t/* translators: Label before for next and previous post. There is a space after the colon. */\n\t\tplaceholder = isNext ? __( 'Next: ' ) : __( 'Previous: ' );\n\t}\n\n\tconst ariaLabel = isNext ? __( 'Next post' ) : __( 'Previous post' );\n\tconst blockProps = useBlockProps( {\n\t\tclassName: classnames( {\n\t\t\t[ `has-text-align-${ textAlign }` ]: textAlign,\n\t\t} ),\n\t} );\n\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} );\n\t\t\treturn filteredTaxonomies;\n\t\t},\n\t\t[ postType ]\n\t);\n\tconst getTaxonomyOptions = () => {\n\t\tconst selectOption = {\n\t\t\tlabel: __( 'Unfiltered' ),\n\t\t\tvalue: '',\n\t\t};\n\t\tconst taxonomyOptions = ( taxonomies ?? [] )\n\t\t\t.filter( ( { visibility } ) => !! visibility?.publicly_queryable )\n\t\t\t.map( ( item ) => {\n\t\t\t\treturn {\n\t\t\t\t\tvalue: item.slug,\n\t\t\t\t\tlabel: item.name,\n\t\t\t\t};\n\t\t\t} );\n\n\t\treturn [ selectOption, ...taxonomyOptions ];\n\t};\n\n\treturn (\n\t\t<>\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody>\n\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Display the title as a link' ) }\n\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t'If you have entered a custom label, it will be prepended before the title.'\n\t\t\t\t\t\t) }\n\t\t\t\t\t\tchecked={ !! showTitle }\n\t\t\t\t\t\tonChange={ () =>\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tshowTitle: ! showTitle,\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t\t{ showTitle && (\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={ __(\n\t\t\t\t\t\t\t\t'Include the label as part of the link'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\tchecked={ !! linkLabel }\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\tlinkLabel: ! linkLabel,\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) }\n\t\t\t\t\t<ToggleGroupControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Arrow' ) }\n\t\t\t\t\t\tvalue={ arrow }\n\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\tsetAttributes( { arrow: value } );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t'A decorative arrow for the next and previous link.'\n\t\t\t\t\t\t) }\n\t\t\t\t\t\tisBlock\n\t\t\t\t\t>\n\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\tvalue=\"none\"\n\t\t\t\t\t\t\tlabel={ _x(\n\t\t\t\t\t\t\t\t'None',\n\t\t\t\t\t\t\t\t'Arrow option for Next/Previous link'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\tvalue=\"arrow\"\n\t\t\t\t\t\t\tlabel={ _x(\n\t\t\t\t\t\t\t\t'Arrow',\n\t\t\t\t\t\t\t\t'Arrow option for Next/Previous link'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\tvalue=\"chevron\"\n\t\t\t\t\t\t\tlabel={ _x(\n\t\t\t\t\t\t\t\t'Chevron',\n\t\t\t\t\t\t\t\t'Arrow option for Next/Previous link'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</ToggleGroupControl>\n\t\t\t\t</PanelBody>\n\t\t\t</InspectorControls>\n\t\t\t<InspectorControls group=\"advanced\">\n\t\t\t\t<SelectControl\n\t\t\t\t\tlabel={ __( 'Filter by taxonomy' ) }\n\t\t\t\t\tvalue={ taxonomy }\n\t\t\t\t\toptions={ getTaxonomyOptions() }\n\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\ttaxonomy: value,\n\t\t\t\t\t\t} )\n\t\t\t\t\t}\n\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t'Only link to posts that have the same taxonomy terms as the current post. For example the same tags or categories.'\n\t\t\t\t\t) }\n\t\t\t\t/>\n\t\t\t</InspectorControls>\n\t\t\t<BlockControls>\n\t\t\t\t<AlignmentToolbar\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<div { ...blockProps }>\n\t\t\t\t{ ! isNext && displayArrow && (\n\t\t\t\t\t<span\n\t\t\t\t\t\tclassName={ `wp-block-post-navigation-link__arrow-previous is-arrow-${ arrow }` }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ displayArrow }\n\t\t\t\t\t</span>\n\t\t\t\t) }\n\t\t\t\t<RichText\n\t\t\t\t\ttagName=\"a\"\n\t\t\t\t\tidentifier=\"label\"\n\t\t\t\t\taria-label={ ariaLabel }\n\t\t\t\t\tplaceholder={ placeholder }\n\t\t\t\t\tvalue={ label }\n\t\t\t\t\tallowedFormats={ [ 'core/bold', 'core/italic' ] }\n\t\t\t\t\tonChange={ ( newLabel ) =>\n\t\t\t\t\t\tsetAttributes( { label: newLabel } )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t\t{ showTitle && (\n\t\t\t\t\t<a\n\t\t\t\t\t\thref=\"#post-navigation-pseudo-link\"\n\t\t\t\t\t\tonClick={ ( event ) => event.preventDefault() }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'An example title' ) }\n\t\t\t\t\t</a>\n\t\t\t\t) }\n\t\t\t\t{ isNext && displayArrow && (\n\t\t\t\t\t<span\n\t\t\t\t\t\tclassName={ `wp-block-post-navigation-link__arrow-next is-arrow-${ arrow }` }\n\t\t\t\t\t\taria-hidden\n\t\t\t\t\t>\n\t\t\t\t\t\t{ displayArrow }\n\t\t\t\t\t</span>\n\t\t\t\t) }\n\t\t\t</div>\n\t\t</>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["clsx","__experimentalToggleGroupControl","ToggleGroupControl","__experimentalToggleGroupControlOption","ToggleGroupControlOption","ToggleControl","SelectControl","PanelBody","InspectorControls","RichText","BlockControls","AlignmentToolbar","useBlockProps","__","_x","useSelect","store","coreStore","PostNavigationLinkEdit","context","postType","attributes","type","label","showTitle","textAlign","linkLabel","arrow","taxonomy","setAttributes","isNext","placeholder","arrowMap","none","chevron","displayArrow","ariaLabel","blockProps","className","taxonomies","select","getTaxonomies","filteredTaxonomies","per_page","getTaxonomyOptions","selectOption","value","taxonomyOptions","filter","visibility","publicly_queryable","map","item","slug","name","createElement","Fragment","__nextHasNoMarginBottom","help","checked","onChange","isBlock","group","options","nextAlign","tagName","identifier","allowedFormats","newLabel","href","onClick","event","preventDefault"],"sources":["@wordpress/block-library/src/post-navigation-link/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalToggleGroupControl as ToggleGroupControl,\n\t__experimentalToggleGroupControlOption as ToggleGroupControlOption,\n\tToggleControl,\n\tSelectControl,\n\tPanelBody,\n} from '@wordpress/components';\nimport {\n\tInspectorControls,\n\tRichText,\n\tBlockControls,\n\tAlignmentToolbar,\n\tuseBlockProps,\n} from '@wordpress/block-editor';\nimport { __, _x } from '@wordpress/i18n';\nimport { useSelect } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\n\nexport default function PostNavigationLinkEdit( {\n\tcontext: { postType },\n\tattributes: {\n\t\ttype,\n\t\tlabel,\n\t\tshowTitle,\n\t\ttextAlign,\n\t\tlinkLabel,\n\t\tarrow,\n\t\ttaxonomy,\n\t},\n\tsetAttributes,\n} ) {\n\tconst isNext = type === 'next';\n\tlet placeholder = isNext ? __( 'Next' ) : __( 'Previous' );\n\n\tconst arrowMap = {\n\t\tnone: '',\n\t\tarrow: isNext ? '→' : '←',\n\t\tchevron: isNext ? '»' : '«',\n\t};\n\n\tconst displayArrow = arrowMap[ arrow ];\n\n\tif ( showTitle ) {\n\t\t/* translators: Label before for next and previous post. There is a space after the colon. */\n\t\tplaceholder = isNext ? __( 'Next: ' ) : __( 'Previous: ' );\n\t}\n\n\tconst ariaLabel = isNext ? __( 'Next post' ) : __( 'Previous post' );\n\tconst blockProps = useBlockProps( {\n\t\tclassName: clsx( {\n\t\t\t[ `has-text-align-${ textAlign }` ]: textAlign,\n\t\t} ),\n\t} );\n\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} );\n\t\t\treturn filteredTaxonomies;\n\t\t},\n\t\t[ postType ]\n\t);\n\tconst getTaxonomyOptions = () => {\n\t\tconst selectOption = {\n\t\t\tlabel: __( 'Unfiltered' ),\n\t\t\tvalue: '',\n\t\t};\n\t\tconst taxonomyOptions = ( taxonomies ?? [] )\n\t\t\t.filter( ( { visibility } ) => !! visibility?.publicly_queryable )\n\t\t\t.map( ( item ) => {\n\t\t\t\treturn {\n\t\t\t\t\tvalue: item.slug,\n\t\t\t\t\tlabel: item.name,\n\t\t\t\t};\n\t\t\t} );\n\n\t\treturn [ selectOption, ...taxonomyOptions ];\n\t};\n\n\treturn (\n\t\t<>\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody>\n\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Display the title as a link' ) }\n\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t'If you have entered a custom label, it will be prepended before the title.'\n\t\t\t\t\t\t) }\n\t\t\t\t\t\tchecked={ !! showTitle }\n\t\t\t\t\t\tonChange={ () =>\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tshowTitle: ! showTitle,\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t\t{ showTitle && (\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={ __(\n\t\t\t\t\t\t\t\t'Include the label as part of the link'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\tchecked={ !! linkLabel }\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\tlinkLabel: ! linkLabel,\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) }\n\t\t\t\t\t<ToggleGroupControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Arrow' ) }\n\t\t\t\t\t\tvalue={ arrow }\n\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\tsetAttributes( { arrow: value } );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t'A decorative arrow for the next and previous link.'\n\t\t\t\t\t\t) }\n\t\t\t\t\t\tisBlock\n\t\t\t\t\t>\n\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\tvalue=\"none\"\n\t\t\t\t\t\t\tlabel={ _x(\n\t\t\t\t\t\t\t\t'None',\n\t\t\t\t\t\t\t\t'Arrow option for Next/Previous link'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\tvalue=\"arrow\"\n\t\t\t\t\t\t\tlabel={ _x(\n\t\t\t\t\t\t\t\t'Arrow',\n\t\t\t\t\t\t\t\t'Arrow option for Next/Previous link'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\tvalue=\"chevron\"\n\t\t\t\t\t\t\tlabel={ _x(\n\t\t\t\t\t\t\t\t'Chevron',\n\t\t\t\t\t\t\t\t'Arrow option for Next/Previous link'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</ToggleGroupControl>\n\t\t\t\t</PanelBody>\n\t\t\t</InspectorControls>\n\t\t\t<InspectorControls group=\"advanced\">\n\t\t\t\t<SelectControl\n\t\t\t\t\tlabel={ __( 'Filter by taxonomy' ) }\n\t\t\t\t\tvalue={ taxonomy }\n\t\t\t\t\toptions={ getTaxonomyOptions() }\n\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\ttaxonomy: value,\n\t\t\t\t\t\t} )\n\t\t\t\t\t}\n\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t'Only link to posts that have the same taxonomy terms as the current post. For example the same tags or categories.'\n\t\t\t\t\t) }\n\t\t\t\t/>\n\t\t\t</InspectorControls>\n\t\t\t<BlockControls>\n\t\t\t\t<AlignmentToolbar\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<div { ...blockProps }>\n\t\t\t\t{ ! isNext && displayArrow && (\n\t\t\t\t\t<span\n\t\t\t\t\t\tclassName={ `wp-block-post-navigation-link__arrow-previous is-arrow-${ arrow }` }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ displayArrow }\n\t\t\t\t\t</span>\n\t\t\t\t) }\n\t\t\t\t<RichText\n\t\t\t\t\ttagName=\"a\"\n\t\t\t\t\tidentifier=\"label\"\n\t\t\t\t\taria-label={ ariaLabel }\n\t\t\t\t\tplaceholder={ placeholder }\n\t\t\t\t\tvalue={ label }\n\t\t\t\t\tallowedFormats={ [ 'core/bold', 'core/italic' ] }\n\t\t\t\t\tonChange={ ( newLabel ) =>\n\t\t\t\t\t\tsetAttributes( { label: newLabel } )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t\t{ showTitle && (\n\t\t\t\t\t<a\n\t\t\t\t\t\thref=\"#post-navigation-pseudo-link\"\n\t\t\t\t\t\tonClick={ ( event ) => event.preventDefault() }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'An example title' ) }\n\t\t\t\t\t</a>\n\t\t\t\t) }\n\t\t\t\t{ isNext && displayArrow && (\n\t\t\t\t\t<span\n\t\t\t\t\t\tclassName={ `wp-block-post-navigation-link__arrow-next is-arrow-${ arrow }` }\n\t\t\t\t\t\taria-hidden\n\t\t\t\t\t>\n\t\t\t\t\t\t{ displayArrow }\n\t\t\t\t\t</span>\n\t\t\t\t) }\n\t\t\t</div>\n\t\t</>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -2,14 +2,14 @@ import { createElement, Fragment } from "react";
|
|
|
2
2
|
/**
|
|
3
3
|
* External dependencies
|
|
4
4
|
*/
|
|
5
|
-
import
|
|
5
|
+
import clsx from 'clsx';
|
|
6
6
|
|
|
7
7
|
/**
|
|
8
8
|
* WordPress dependencies
|
|
9
9
|
*/
|
|
10
10
|
import { memo, useMemo, useState } from '@wordpress/element';
|
|
11
11
|
import { useSelect } from '@wordpress/data';
|
|
12
|
-
import { __ } from '@wordpress/i18n';
|
|
12
|
+
import { __, _x } from '@wordpress/i18n';
|
|
13
13
|
import { BlockControls, BlockContextProvider, __experimentalUseBlockPreview as useBlockPreview, useBlockProps, useInnerBlocksProps, store as blockEditorStore } from '@wordpress/block-editor';
|
|
14
14
|
import { Spinner, ToolbarGroup } from '@wordpress/components';
|
|
15
15
|
import { store as coreStore } from '@wordpress/core-data';
|
|
@@ -19,7 +19,7 @@ function PostTemplateInnerBlocks({
|
|
|
19
19
|
classList
|
|
20
20
|
}) {
|
|
21
21
|
const innerBlocksProps = useInnerBlocksProps({
|
|
22
|
-
className:
|
|
22
|
+
className: clsx('wp-block-post', classList)
|
|
23
23
|
}, {
|
|
24
24
|
template: TEMPLATE,
|
|
25
25
|
__unstableDisableLayoutClassNames: true
|
|
@@ -38,7 +38,7 @@ function PostTemplateBlockPreview({
|
|
|
38
38
|
const blockPreviewProps = useBlockPreview({
|
|
39
39
|
blocks,
|
|
40
40
|
props: {
|
|
41
|
-
className:
|
|
41
|
+
className: clsx('wp-block-post', classList)
|
|
42
42
|
}
|
|
43
43
|
});
|
|
44
44
|
const handleOnClick = () => {
|
|
@@ -192,7 +192,7 @@ export default function PostTemplateEdit({
|
|
|
192
192
|
};
|
|
193
193
|
}), [posts]);
|
|
194
194
|
const blockProps = useBlockProps({
|
|
195
|
-
className:
|
|
195
|
+
className: clsx(__unstableLayoutClassNames, {
|
|
196
196
|
[`columns-${columnCount}`]: layoutType === 'grid' && columnCount // Ensure column count is flagged via classname for backwards compatibility.
|
|
197
197
|
})
|
|
198
198
|
});
|
|
@@ -214,14 +214,14 @@ export default function PostTemplateEdit({
|
|
|
214
214
|
});
|
|
215
215
|
const displayLayoutControls = [{
|
|
216
216
|
icon: list,
|
|
217
|
-
title:
|
|
217
|
+
title: _x('List view', 'Post template block display setting'),
|
|
218
218
|
onClick: () => setDisplayLayout({
|
|
219
219
|
type: 'default'
|
|
220
220
|
}),
|
|
221
221
|
isActive: layoutType === 'default' || layoutType === 'constrained'
|
|
222
222
|
}, {
|
|
223
223
|
icon: grid,
|
|
224
|
-
title:
|
|
224
|
+
title: _x('Grid view', 'Post template block display setting'),
|
|
225
225
|
onClick: () => setDisplayLayout({
|
|
226
226
|
type: 'grid',
|
|
227
227
|
columnCount
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["classnames","memo","useMemo","useState","useSelect","__","BlockControls","BlockContextProvider","__experimentalUseBlockPreview","useBlockPreview","useBlockProps","useInnerBlocksProps","store","blockEditorStore","Spinner","ToolbarGroup","coreStore","list","grid","TEMPLATE","PostTemplateInnerBlocks","classList","innerBlocksProps","className","template","__unstableDisableLayoutClassNames","createElement","PostTemplateBlockPreview","blocks","blockContextId","isHidden","setActiveBlockContextId","blockPreviewProps","props","handleOnClick","style","display","undefined","tabIndex","role","onClick","onKeyPress","MemoizedPostTemplateBlockPreview","PostTemplateEdit","setAttributes","clientId","context","query","perPage","offset","postType","order","orderBy","author","search","exclude","sticky","inherit","taxQuery","parents","pages","restQueryArgs","templateSlug","previewPostType","attributes","layout","__unstableLayoutClassNames","type","layoutType","columnCount","activeBlockContextId","posts","select","getEntityRecords","getTaxonomies","getBlocks","templateCategory","startsWith","per_page","_fields","slug","replace","orderby","taxonomies","builtTaxQuery","Object","entries","reduce","accumulator","taxonomySlug","terms","taxonomy","find","rest_base","keys","length","assign","parent","categories","id","usedPostType","blockContexts","map","post","_post$class_list","postId","class_list","blockProps","setDisplayLayout","newDisplayLayout","displayLayoutControls","icon","title","isActive","Fragment","controls","blockContext","key","value"],"sources":["@wordpress/block-library/src/post-template/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { memo, useMemo, useState } from '@wordpress/element';\nimport { useSelect } from '@wordpress/data';\nimport { __ } from '@wordpress/i18n';\nimport {\n\tBlockControls,\n\tBlockContextProvider,\n\t__experimentalUseBlockPreview as useBlockPreview,\n\tuseBlockProps,\n\tuseInnerBlocksProps,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { Spinner, ToolbarGroup } from '@wordpress/components';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { list, grid } from '@wordpress/icons';\n\nconst TEMPLATE = [\n\t[ 'core/post-title' ],\n\t[ 'core/post-date' ],\n\t[ 'core/post-excerpt' ],\n];\n\nfunction PostTemplateInnerBlocks( { classList } ) {\n\tconst innerBlocksProps = useInnerBlocksProps(\n\t\t{ className: classnames( 'wp-block-post', classList ) },\n\t\t{ template: TEMPLATE, __unstableDisableLayoutClassNames: true }\n\t);\n\treturn <li { ...innerBlocksProps } />;\n}\n\nfunction PostTemplateBlockPreview( {\n\tblocks,\n\tblockContextId,\n\tclassList,\n\tisHidden,\n\tsetActiveBlockContextId,\n} ) {\n\tconst blockPreviewProps = useBlockPreview( {\n\t\tblocks,\n\t\tprops: {\n\t\t\tclassName: classnames( 'wp-block-post', classList ),\n\t\t},\n\t} );\n\n\tconst handleOnClick = () => {\n\t\tsetActiveBlockContextId( blockContextId );\n\t};\n\n\tconst style = {\n\t\tdisplay: isHidden ? 'none' : undefined,\n\t};\n\n\treturn (\n\t\t<li\n\t\t\t{ ...blockPreviewProps }\n\t\t\ttabIndex={ 0 }\n\t\t\t// eslint-disable-next-line jsx-a11y/no-noninteractive-element-to-interactive-role\n\t\t\trole=\"button\"\n\t\t\tonClick={ handleOnClick }\n\t\t\tonKeyPress={ handleOnClick }\n\t\t\tstyle={ style }\n\t\t/>\n\t);\n}\n\nconst MemoizedPostTemplateBlockPreview = memo( PostTemplateBlockPreview );\n\nexport default function PostTemplateEdit( {\n\tsetAttributes,\n\tclientId,\n\tcontext: {\n\t\tquery: {\n\t\t\tperPage,\n\t\t\toffset = 0,\n\t\t\tpostType,\n\t\t\torder,\n\t\t\torderBy,\n\t\t\tauthor,\n\t\t\tsearch,\n\t\t\texclude,\n\t\t\tsticky,\n\t\t\tinherit,\n\t\t\ttaxQuery,\n\t\t\tparents,\n\t\t\tpages,\n\t\t\t// We gather extra query args to pass to the REST API call.\n\t\t\t// This way extenders of Query Loop can add their own query args,\n\t\t\t// and have accurate previews in the editor.\n\t\t\t// Noting though that these args should either be supported by the\n\t\t\t// REST API or be handled by custom REST filters like `rest_{$this->post_type}_query`.\n\t\t\t...restQueryArgs\n\t\t} = {},\n\t\ttemplateSlug,\n\t\tpreviewPostType,\n\t},\n\tattributes: { layout },\n\t__unstableLayoutClassNames,\n} ) {\n\tconst { type: layoutType, columnCount = 3 } = layout || {};\n\tconst [ activeBlockContextId, setActiveBlockContextId ] = useState();\n\tconst { posts, blocks } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getEntityRecords, getTaxonomies } = select( coreStore );\n\t\t\tconst { getBlocks } = select( blockEditorStore );\n\t\t\tconst templateCategory =\n\t\t\t\tinherit &&\n\t\t\t\ttemplateSlug?.startsWith( 'category-' ) &&\n\t\t\t\tgetEntityRecords( 'taxonomy', 'category', {\n\t\t\t\t\tcontext: 'view',\n\t\t\t\t\tper_page: 1,\n\t\t\t\t\t_fields: [ 'id' ],\n\t\t\t\t\tslug: templateSlug.replace( 'category-', '' ),\n\t\t\t\t} );\n\t\t\tconst query = {\n\t\t\t\toffset: offset || 0,\n\t\t\t\torder,\n\t\t\t\torderby: orderBy,\n\t\t\t};\n\t\t\t// There is no need to build the taxQuery if we inherit.\n\t\t\tif ( taxQuery && ! inherit ) {\n\t\t\t\tconst taxonomies = getTaxonomies( {\n\t\t\t\t\ttype: postType,\n\t\t\t\t\tper_page: -1,\n\t\t\t\t\tcontext: 'view',\n\t\t\t\t} );\n\t\t\t\t// We have to build the tax query for the REST API and use as\n\t\t\t\t// keys the taxonomies `rest_base` with the `term ids` as values.\n\t\t\t\tconst builtTaxQuery = Object.entries( taxQuery ).reduce(\n\t\t\t\t\t( accumulator, [ taxonomySlug, terms ] ) => {\n\t\t\t\t\t\tconst taxonomy = taxonomies?.find(\n\t\t\t\t\t\t\t( { slug } ) => slug === taxonomySlug\n\t\t\t\t\t\t);\n\t\t\t\t\t\tif ( taxonomy?.rest_base ) {\n\t\t\t\t\t\t\taccumulator[ taxonomy?.rest_base ] = terms;\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn accumulator;\n\t\t\t\t\t},\n\t\t\t\t\t{}\n\t\t\t\t);\n\t\t\t\tif ( !! Object.keys( builtTaxQuery ).length ) {\n\t\t\t\t\tObject.assign( query, builtTaxQuery );\n\t\t\t\t}\n\t\t\t}\n\t\t\tif ( perPage ) {\n\t\t\t\tquery.per_page = perPage;\n\t\t\t}\n\t\t\tif ( author ) {\n\t\t\t\tquery.author = author;\n\t\t\t}\n\t\t\tif ( search ) {\n\t\t\t\tquery.search = search;\n\t\t\t}\n\t\t\tif ( exclude?.length ) {\n\t\t\t\tquery.exclude = exclude;\n\t\t\t}\n\t\t\tif ( parents?.length ) {\n\t\t\t\tquery.parent = parents;\n\t\t\t}\n\t\t\t// If sticky is not set, it will return all posts in the results.\n\t\t\t// If sticky is set to `only`, it will limit the results to sticky posts only.\n\t\t\t// If it is anything else, it will exclude sticky posts from results. For the record the value stored is `exclude`.\n\t\t\tif ( sticky ) {\n\t\t\t\tquery.sticky = sticky === 'only';\n\t\t\t}\n\t\t\t// If `inherit` is truthy, adjust conditionally the query to create a better preview.\n\t\t\tif ( inherit ) {\n\t\t\t\t// Change the post-type if needed.\n\t\t\t\tif ( templateSlug?.startsWith( 'archive-' ) ) {\n\t\t\t\t\tquery.postType = templateSlug.replace( 'archive-', '' );\n\t\t\t\t\tpostType = query.postType;\n\t\t\t\t} else if ( templateCategory ) {\n\t\t\t\t\tquery.categories = templateCategory[ 0 ]?.id;\n\t\t\t\t}\n\t\t\t}\n\t\t\t// When we preview Query Loop blocks we should prefer the current\n\t\t\t// block's postType, which is passed through block context.\n\t\t\tconst usedPostType = previewPostType || postType;\n\t\t\treturn {\n\t\t\t\tposts: getEntityRecords( 'postType', usedPostType, {\n\t\t\t\t\t...query,\n\t\t\t\t\t...restQueryArgs,\n\t\t\t\t} ),\n\t\t\t\tblocks: getBlocks( clientId ),\n\t\t\t};\n\t\t},\n\t\t[\n\t\t\tperPage,\n\t\t\toffset,\n\t\t\torder,\n\t\t\torderBy,\n\t\t\tclientId,\n\t\t\tauthor,\n\t\t\tsearch,\n\t\t\tpostType,\n\t\t\texclude,\n\t\t\tsticky,\n\t\t\tinherit,\n\t\t\ttemplateSlug,\n\t\t\ttaxQuery,\n\t\t\tparents,\n\t\t\trestQueryArgs,\n\t\t\tpreviewPostType,\n\t\t]\n\t);\n\tconst blockContexts = useMemo(\n\t\t() =>\n\t\t\tposts?.map( ( post ) => ( {\n\t\t\t\tpostType: post.type,\n\t\t\t\tpostId: post.id,\n\t\t\t\tclassList: post.class_list ?? '',\n\t\t\t} ) ),\n\t\t[ posts ]\n\t);\n\n\tconst blockProps = useBlockProps( {\n\t\tclassName: classnames( __unstableLayoutClassNames, {\n\t\t\t[ `columns-${ columnCount }` ]:\n\t\t\t\tlayoutType === 'grid' && columnCount, // Ensure column count is flagged via classname for backwards compatibility.\n\t\t} ),\n\t} );\n\n\tif ( ! posts ) {\n\t\treturn (\n\t\t\t<p { ...blockProps }>\n\t\t\t\t<Spinner />\n\t\t\t</p>\n\t\t);\n\t}\n\n\tif ( ! posts.length ) {\n\t\treturn <p { ...blockProps }> { __( 'No results found.' ) }</p>;\n\t}\n\n\tconst setDisplayLayout = ( newDisplayLayout ) =>\n\t\tsetAttributes( {\n\t\t\tlayout: { ...layout, ...newDisplayLayout },\n\t\t} );\n\n\tconst displayLayoutControls = [\n\t\t{\n\t\t\ticon: list,\n\t\t\ttitle: __( 'List view' ),\n\t\t\tonClick: () => setDisplayLayout( { type: 'default' } ),\n\t\t\tisActive: layoutType === 'default' || layoutType === 'constrained',\n\t\t},\n\t\t{\n\t\t\ticon: grid,\n\t\t\ttitle: __( 'Grid view' ),\n\t\t\tonClick: () =>\n\t\t\t\tsetDisplayLayout( {\n\t\t\t\t\ttype: 'grid',\n\t\t\t\t\tcolumnCount,\n\t\t\t\t} ),\n\t\t\tisActive: layoutType === 'grid',\n\t\t},\n\t];\n\n\t// To avoid flicker when switching active block contexts, a preview is rendered\n\t// for each block context, but the preview for the active block context is hidden.\n\t// This ensures that when it is displayed again, the cached rendering of the\n\t// block preview is used, instead of having to re-render the preview from scratch.\n\treturn (\n\t\t<>\n\t\t\t<BlockControls>\n\t\t\t\t<ToolbarGroup controls={ displayLayoutControls } />\n\t\t\t</BlockControls>\n\n\t\t\t<ul { ...blockProps }>\n\t\t\t\t{ blockContexts &&\n\t\t\t\t\tblockContexts.map( ( blockContext ) => (\n\t\t\t\t\t\t<BlockContextProvider\n\t\t\t\t\t\t\tkey={ blockContext.postId }\n\t\t\t\t\t\t\tvalue={ blockContext }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ blockContext.postId ===\n\t\t\t\t\t\t\t( activeBlockContextId ||\n\t\t\t\t\t\t\t\tblockContexts[ 0 ]?.postId ) ? (\n\t\t\t\t\t\t\t\t<PostTemplateInnerBlocks\n\t\t\t\t\t\t\t\t\tclassList={ blockContext.classList }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) : null }\n\t\t\t\t\t\t\t<MemoizedPostTemplateBlockPreview\n\t\t\t\t\t\t\t\tblocks={ blocks }\n\t\t\t\t\t\t\t\tblockContextId={ blockContext.postId }\n\t\t\t\t\t\t\t\tclassList={ blockContext.classList }\n\t\t\t\t\t\t\t\tsetActiveBlockContextId={\n\t\t\t\t\t\t\t\t\tsetActiveBlockContextId\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tisHidden={\n\t\t\t\t\t\t\t\t\tblockContext.postId ===\n\t\t\t\t\t\t\t\t\t( activeBlockContextId ||\n\t\t\t\t\t\t\t\t\t\tblockContexts[ 0 ]?.postId )\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</BlockContextProvider>\n\t\t\t\t\t) ) }\n\t\t\t</ul>\n\t\t</>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["clsx","memo","useMemo","useState","useSelect","__","_x","BlockControls","BlockContextProvider","__experimentalUseBlockPreview","useBlockPreview","useBlockProps","useInnerBlocksProps","store","blockEditorStore","Spinner","ToolbarGroup","coreStore","list","grid","TEMPLATE","PostTemplateInnerBlocks","classList","innerBlocksProps","className","template","__unstableDisableLayoutClassNames","createElement","PostTemplateBlockPreview","blocks","blockContextId","isHidden","setActiveBlockContextId","blockPreviewProps","props","handleOnClick","style","display","undefined","tabIndex","role","onClick","onKeyPress","MemoizedPostTemplateBlockPreview","PostTemplateEdit","setAttributes","clientId","context","query","perPage","offset","postType","order","orderBy","author","search","exclude","sticky","inherit","taxQuery","parents","pages","restQueryArgs","templateSlug","previewPostType","attributes","layout","__unstableLayoutClassNames","type","layoutType","columnCount","activeBlockContextId","posts","select","getEntityRecords","getTaxonomies","getBlocks","templateCategory","startsWith","per_page","_fields","slug","replace","orderby","taxonomies","builtTaxQuery","Object","entries","reduce","accumulator","taxonomySlug","terms","taxonomy","find","rest_base","keys","length","assign","parent","categories","id","usedPostType","blockContexts","map","post","_post$class_list","postId","class_list","blockProps","setDisplayLayout","newDisplayLayout","displayLayoutControls","icon","title","isActive","Fragment","controls","blockContext","key","value"],"sources":["@wordpress/block-library/src/post-template/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { memo, useMemo, useState } from '@wordpress/element';\nimport { useSelect } from '@wordpress/data';\nimport { __, _x } from '@wordpress/i18n';\nimport {\n\tBlockControls,\n\tBlockContextProvider,\n\t__experimentalUseBlockPreview as useBlockPreview,\n\tuseBlockProps,\n\tuseInnerBlocksProps,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { Spinner, ToolbarGroup } from '@wordpress/components';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { list, grid } from '@wordpress/icons';\n\nconst TEMPLATE = [\n\t[ 'core/post-title' ],\n\t[ 'core/post-date' ],\n\t[ 'core/post-excerpt' ],\n];\n\nfunction PostTemplateInnerBlocks( { classList } ) {\n\tconst innerBlocksProps = useInnerBlocksProps(\n\t\t{ className: clsx( 'wp-block-post', classList ) },\n\t\t{ template: TEMPLATE, __unstableDisableLayoutClassNames: true }\n\t);\n\treturn <li { ...innerBlocksProps } />;\n}\n\nfunction PostTemplateBlockPreview( {\n\tblocks,\n\tblockContextId,\n\tclassList,\n\tisHidden,\n\tsetActiveBlockContextId,\n} ) {\n\tconst blockPreviewProps = useBlockPreview( {\n\t\tblocks,\n\t\tprops: {\n\t\t\tclassName: clsx( 'wp-block-post', classList ),\n\t\t},\n\t} );\n\n\tconst handleOnClick = () => {\n\t\tsetActiveBlockContextId( blockContextId );\n\t};\n\n\tconst style = {\n\t\tdisplay: isHidden ? 'none' : undefined,\n\t};\n\n\treturn (\n\t\t<li\n\t\t\t{ ...blockPreviewProps }\n\t\t\ttabIndex={ 0 }\n\t\t\t// eslint-disable-next-line jsx-a11y/no-noninteractive-element-to-interactive-role\n\t\t\trole=\"button\"\n\t\t\tonClick={ handleOnClick }\n\t\t\tonKeyPress={ handleOnClick }\n\t\t\tstyle={ style }\n\t\t/>\n\t);\n}\n\nconst MemoizedPostTemplateBlockPreview = memo( PostTemplateBlockPreview );\n\nexport default function PostTemplateEdit( {\n\tsetAttributes,\n\tclientId,\n\tcontext: {\n\t\tquery: {\n\t\t\tperPage,\n\t\t\toffset = 0,\n\t\t\tpostType,\n\t\t\torder,\n\t\t\torderBy,\n\t\t\tauthor,\n\t\t\tsearch,\n\t\t\texclude,\n\t\t\tsticky,\n\t\t\tinherit,\n\t\t\ttaxQuery,\n\t\t\tparents,\n\t\t\tpages,\n\t\t\t// We gather extra query args to pass to the REST API call.\n\t\t\t// This way extenders of Query Loop can add their own query args,\n\t\t\t// and have accurate previews in the editor.\n\t\t\t// Noting though that these args should either be supported by the\n\t\t\t// REST API or be handled by custom REST filters like `rest_{$this->post_type}_query`.\n\t\t\t...restQueryArgs\n\t\t} = {},\n\t\ttemplateSlug,\n\t\tpreviewPostType,\n\t},\n\tattributes: { layout },\n\t__unstableLayoutClassNames,\n} ) {\n\tconst { type: layoutType, columnCount = 3 } = layout || {};\n\tconst [ activeBlockContextId, setActiveBlockContextId ] = useState();\n\tconst { posts, blocks } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getEntityRecords, getTaxonomies } = select( coreStore );\n\t\t\tconst { getBlocks } = select( blockEditorStore );\n\t\t\tconst templateCategory =\n\t\t\t\tinherit &&\n\t\t\t\ttemplateSlug?.startsWith( 'category-' ) &&\n\t\t\t\tgetEntityRecords( 'taxonomy', 'category', {\n\t\t\t\t\tcontext: 'view',\n\t\t\t\t\tper_page: 1,\n\t\t\t\t\t_fields: [ 'id' ],\n\t\t\t\t\tslug: templateSlug.replace( 'category-', '' ),\n\t\t\t\t} );\n\t\t\tconst query = {\n\t\t\t\toffset: offset || 0,\n\t\t\t\torder,\n\t\t\t\torderby: orderBy,\n\t\t\t};\n\t\t\t// There is no need to build the taxQuery if we inherit.\n\t\t\tif ( taxQuery && ! inherit ) {\n\t\t\t\tconst taxonomies = getTaxonomies( {\n\t\t\t\t\ttype: postType,\n\t\t\t\t\tper_page: -1,\n\t\t\t\t\tcontext: 'view',\n\t\t\t\t} );\n\t\t\t\t// We have to build the tax query for the REST API and use as\n\t\t\t\t// keys the taxonomies `rest_base` with the `term ids` as values.\n\t\t\t\tconst builtTaxQuery = Object.entries( taxQuery ).reduce(\n\t\t\t\t\t( accumulator, [ taxonomySlug, terms ] ) => {\n\t\t\t\t\t\tconst taxonomy = taxonomies?.find(\n\t\t\t\t\t\t\t( { slug } ) => slug === taxonomySlug\n\t\t\t\t\t\t);\n\t\t\t\t\t\tif ( taxonomy?.rest_base ) {\n\t\t\t\t\t\t\taccumulator[ taxonomy?.rest_base ] = terms;\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn accumulator;\n\t\t\t\t\t},\n\t\t\t\t\t{}\n\t\t\t\t);\n\t\t\t\tif ( !! Object.keys( builtTaxQuery ).length ) {\n\t\t\t\t\tObject.assign( query, builtTaxQuery );\n\t\t\t\t}\n\t\t\t}\n\t\t\tif ( perPage ) {\n\t\t\t\tquery.per_page = perPage;\n\t\t\t}\n\t\t\tif ( author ) {\n\t\t\t\tquery.author = author;\n\t\t\t}\n\t\t\tif ( search ) {\n\t\t\t\tquery.search = search;\n\t\t\t}\n\t\t\tif ( exclude?.length ) {\n\t\t\t\tquery.exclude = exclude;\n\t\t\t}\n\t\t\tif ( parents?.length ) {\n\t\t\t\tquery.parent = parents;\n\t\t\t}\n\t\t\t// If sticky is not set, it will return all posts in the results.\n\t\t\t// If sticky is set to `only`, it will limit the results to sticky posts only.\n\t\t\t// If it is anything else, it will exclude sticky posts from results. For the record the value stored is `exclude`.\n\t\t\tif ( sticky ) {\n\t\t\t\tquery.sticky = sticky === 'only';\n\t\t\t}\n\t\t\t// If `inherit` is truthy, adjust conditionally the query to create a better preview.\n\t\t\tif ( inherit ) {\n\t\t\t\t// Change the post-type if needed.\n\t\t\t\tif ( templateSlug?.startsWith( 'archive-' ) ) {\n\t\t\t\t\tquery.postType = templateSlug.replace( 'archive-', '' );\n\t\t\t\t\tpostType = query.postType;\n\t\t\t\t} else if ( templateCategory ) {\n\t\t\t\t\tquery.categories = templateCategory[ 0 ]?.id;\n\t\t\t\t}\n\t\t\t}\n\t\t\t// When we preview Query Loop blocks we should prefer the current\n\t\t\t// block's postType, which is passed through block context.\n\t\t\tconst usedPostType = previewPostType || postType;\n\t\t\treturn {\n\t\t\t\tposts: getEntityRecords( 'postType', usedPostType, {\n\t\t\t\t\t...query,\n\t\t\t\t\t...restQueryArgs,\n\t\t\t\t} ),\n\t\t\t\tblocks: getBlocks( clientId ),\n\t\t\t};\n\t\t},\n\t\t[\n\t\t\tperPage,\n\t\t\toffset,\n\t\t\torder,\n\t\t\torderBy,\n\t\t\tclientId,\n\t\t\tauthor,\n\t\t\tsearch,\n\t\t\tpostType,\n\t\t\texclude,\n\t\t\tsticky,\n\t\t\tinherit,\n\t\t\ttemplateSlug,\n\t\t\ttaxQuery,\n\t\t\tparents,\n\t\t\trestQueryArgs,\n\t\t\tpreviewPostType,\n\t\t]\n\t);\n\tconst blockContexts = useMemo(\n\t\t() =>\n\t\t\tposts?.map( ( post ) => ( {\n\t\t\t\tpostType: post.type,\n\t\t\t\tpostId: post.id,\n\t\t\t\tclassList: post.class_list ?? '',\n\t\t\t} ) ),\n\t\t[ posts ]\n\t);\n\n\tconst blockProps = useBlockProps( {\n\t\tclassName: clsx( __unstableLayoutClassNames, {\n\t\t\t[ `columns-${ columnCount }` ]:\n\t\t\t\tlayoutType === 'grid' && columnCount, // Ensure column count is flagged via classname for backwards compatibility.\n\t\t} ),\n\t} );\n\n\tif ( ! posts ) {\n\t\treturn (\n\t\t\t<p { ...blockProps }>\n\t\t\t\t<Spinner />\n\t\t\t</p>\n\t\t);\n\t}\n\n\tif ( ! posts.length ) {\n\t\treturn <p { ...blockProps }> { __( 'No results found.' ) }</p>;\n\t}\n\n\tconst setDisplayLayout = ( newDisplayLayout ) =>\n\t\tsetAttributes( {\n\t\t\tlayout: { ...layout, ...newDisplayLayout },\n\t\t} );\n\n\tconst displayLayoutControls = [\n\t\t{\n\t\t\ticon: list,\n\t\t\ttitle: _x( 'List view', 'Post template block display setting' ),\n\t\t\tonClick: () => setDisplayLayout( { type: 'default' } ),\n\t\t\tisActive: layoutType === 'default' || layoutType === 'constrained',\n\t\t},\n\t\t{\n\t\t\ticon: grid,\n\t\t\ttitle: _x( 'Grid view', 'Post template block display setting' ),\n\t\t\tonClick: () =>\n\t\t\t\tsetDisplayLayout( {\n\t\t\t\t\ttype: 'grid',\n\t\t\t\t\tcolumnCount,\n\t\t\t\t} ),\n\t\t\tisActive: layoutType === 'grid',\n\t\t},\n\t];\n\n\t// To avoid flicker when switching active block contexts, a preview is rendered\n\t// for each block context, but the preview for the active block context is hidden.\n\t// This ensures that when it is displayed again, the cached rendering of the\n\t// block preview is used, instead of having to re-render the preview from scratch.\n\treturn (\n\t\t<>\n\t\t\t<BlockControls>\n\t\t\t\t<ToolbarGroup controls={ displayLayoutControls } />\n\t\t\t</BlockControls>\n\n\t\t\t<ul { ...blockProps }>\n\t\t\t\t{ blockContexts &&\n\t\t\t\t\tblockContexts.map( ( blockContext ) => (\n\t\t\t\t\t\t<BlockContextProvider\n\t\t\t\t\t\t\tkey={ blockContext.postId }\n\t\t\t\t\t\t\tvalue={ blockContext }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ blockContext.postId ===\n\t\t\t\t\t\t\t( activeBlockContextId ||\n\t\t\t\t\t\t\t\tblockContexts[ 0 ]?.postId ) ? (\n\t\t\t\t\t\t\t\t<PostTemplateInnerBlocks\n\t\t\t\t\t\t\t\t\tclassList={ blockContext.classList }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) : null }\n\t\t\t\t\t\t\t<MemoizedPostTemplateBlockPreview\n\t\t\t\t\t\t\t\tblocks={ blocks }\n\t\t\t\t\t\t\t\tblockContextId={ blockContext.postId }\n\t\t\t\t\t\t\t\tclassList={ blockContext.classList }\n\t\t\t\t\t\t\t\tsetActiveBlockContextId={\n\t\t\t\t\t\t\t\t\tsetActiveBlockContextId\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tisHidden={\n\t\t\t\t\t\t\t\t\tblockContext.postId ===\n\t\t\t\t\t\t\t\t\t( activeBlockContextId ||\n\t\t\t\t\t\t\t\t\t\tblockContexts[ 0 ]?.postId )\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</BlockContextProvider>\n\t\t\t\t\t) ) }\n\t\t\t</ul>\n\t\t</>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -2,7 +2,7 @@ import { createElement, Fragment } from "react";
|
|
|
2
2
|
/**
|
|
3
3
|
* External dependencies
|
|
4
4
|
*/
|
|
5
|
-
import
|
|
5
|
+
import clsx from 'clsx';
|
|
6
6
|
|
|
7
7
|
/**
|
|
8
8
|
* WordPress dependencies
|
|
@@ -62,7 +62,7 @@ export default function PostTermsEdit({
|
|
|
62
62
|
const hasPost = postId && postType;
|
|
63
63
|
const blockInformation = useBlockDisplayInformation(clientId);
|
|
64
64
|
const blockProps = useBlockProps({
|
|
65
|
-
className:
|
|
65
|
+
className: clsx({
|
|
66
66
|
[`has-text-align-${textAlign}`]: textAlign,
|
|
67
67
|
[`taxonomy-${term}`]: term
|
|
68
68
|
})
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["
|
|
1
|
+
{"version":3,"names":["clsx","AlignmentToolbar","InspectorControls","BlockControls","useBlockProps","useBlockDisplayInformation","RichText","createBlock","getDefaultBlockName","Spinner","TextControl","useSelect","decodeEntities","__","store","coreStore","usePostTerms","ALLOWED_FORMATS","PostTermsEdit","attributes","clientId","context","isSelected","setAttributes","insertBlocksAfter","term","textAlign","separator","prefix","suffix","postId","postType","selectedTerm","select","getTaxonomy","taxonomy","visibility","publicly_queryable","postTerms","hasPostTerms","isLoading","hasPost","blockInformation","blockProps","className","createElement","Fragment","value","onChange","nextAlign","group","__nextHasNoMarginBottom","autoComplete","label","nextValue","help","identifier","allowedFormats","placeholder","tagName","title","map","postTerm","key","id","href","link","onClick","event","preventDefault","name","reduce","prev","curr","labels","no_terms","__unstableOnSplitAtEnd"],"sources":["@wordpress/block-library/src/post-terms/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tAlignmentToolbar,\n\tInspectorControls,\n\tBlockControls,\n\tuseBlockProps,\n\tuseBlockDisplayInformation,\n\tRichText,\n} from '@wordpress/block-editor';\nimport { createBlock, getDefaultBlockName } from '@wordpress/blocks';\nimport { Spinner, TextControl } from '@wordpress/components';\nimport { useSelect } from '@wordpress/data';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { __ } from '@wordpress/i18n';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport usePostTerms from './use-post-terms';\n\n// Allowed formats for the prefix and suffix fields.\nconst ALLOWED_FORMATS = [\n\t'core/bold',\n\t'core/image',\n\t'core/italic',\n\t'core/link',\n\t'core/strikethrough',\n\t'core/text-color',\n];\n\nexport default function PostTermsEdit( {\n\tattributes,\n\tclientId,\n\tcontext,\n\tisSelected,\n\tsetAttributes,\n\tinsertBlocksAfter,\n} ) {\n\tconst { term, textAlign, separator, prefix, suffix } = attributes;\n\tconst { postId, postType } = context;\n\n\tconst selectedTerm = useSelect(\n\t\t( select ) => {\n\t\t\tif ( ! term ) {\n\t\t\t\treturn {};\n\t\t\t}\n\t\t\tconst { getTaxonomy } = select( coreStore );\n\t\t\tconst taxonomy = getTaxonomy( term );\n\t\t\treturn taxonomy?.visibility?.publicly_queryable ? taxonomy : {};\n\t\t},\n\t\t[ term ]\n\t);\n\tconst { postTerms, hasPostTerms, isLoading } = usePostTerms( {\n\t\tpostId,\n\t\tterm: selectedTerm,\n\t} );\n\tconst hasPost = postId && postType;\n\tconst blockInformation = useBlockDisplayInformation( clientId );\n\tconst blockProps = useBlockProps( {\n\t\tclassName: clsx( {\n\t\t\t[ `has-text-align-${ textAlign }` ]: textAlign,\n\t\t\t[ `taxonomy-${ term }` ]: term,\n\t\t} ),\n\t} );\n\n\treturn (\n\t\t<>\n\t\t\t<BlockControls>\n\t\t\t\t<AlignmentToolbar\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<InspectorControls group=\"advanced\">\n\t\t\t\t<TextControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tautoComplete=\"off\"\n\t\t\t\t\tlabel={ __( 'Separator' ) }\n\t\t\t\t\tvalue={ separator || '' }\n\t\t\t\t\tonChange={ ( nextValue ) => {\n\t\t\t\t\t\tsetAttributes( { separator: nextValue } );\n\t\t\t\t\t} }\n\t\t\t\t\thelp={ __( 'Enter character(s) used to separate terms.' ) }\n\t\t\t\t/>\n\t\t\t</InspectorControls>\n\t\t\t<div { ...blockProps }>\n\t\t\t\t{ isLoading && hasPost && <Spinner /> }\n\t\t\t\t{ ! isLoading && ( isSelected || prefix ) && (\n\t\t\t\t\t<RichText\n\t\t\t\t\t\tidentifier=\"prefix\"\n\t\t\t\t\t\tallowedFormats={ ALLOWED_FORMATS }\n\t\t\t\t\t\tclassName=\"wp-block-post-terms__prefix\"\n\t\t\t\t\t\taria-label={ __( 'Prefix' ) }\n\t\t\t\t\t\tplaceholder={ __( 'Prefix' ) + ' ' }\n\t\t\t\t\t\tvalue={ prefix }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tsetAttributes( { prefix: value } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\ttagName=\"span\"\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t{ ( ! hasPost || ! term ) && (\n\t\t\t\t\t<span>{ blockInformation.title }</span>\n\t\t\t\t) }\n\t\t\t\t{ hasPost &&\n\t\t\t\t\t! isLoading &&\n\t\t\t\t\thasPostTerms &&\n\t\t\t\t\tpostTerms\n\t\t\t\t\t\t.map( ( postTerm ) => (\n\t\t\t\t\t\t\t<a\n\t\t\t\t\t\t\t\tkey={ postTerm.id }\n\t\t\t\t\t\t\t\thref={ postTerm.link }\n\t\t\t\t\t\t\t\tonClick={ ( event ) => event.preventDefault() }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ decodeEntities( postTerm.name ) }\n\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t) )\n\t\t\t\t\t\t.reduce( ( prev, curr ) => (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t{ prev }\n\t\t\t\t\t\t\t\t<span className=\"wp-block-post-terms__separator\">\n\t\t\t\t\t\t\t\t\t{ separator || ' ' }\n\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t{ curr }\n\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t) ) }\n\t\t\t\t{ hasPost &&\n\t\t\t\t\t! isLoading &&\n\t\t\t\t\t! hasPostTerms &&\n\t\t\t\t\t( selectedTerm?.labels?.no_terms ||\n\t\t\t\t\t\t__( 'Term items not found.' ) ) }\n\t\t\t\t{ ! isLoading && ( isSelected || suffix ) && (\n\t\t\t\t\t<RichText\n\t\t\t\t\t\tidentifier=\"suffix\"\n\t\t\t\t\t\tallowedFormats={ ALLOWED_FORMATS }\n\t\t\t\t\t\tclassName=\"wp-block-post-terms__suffix\"\n\t\t\t\t\t\taria-label={ __( 'Suffix' ) }\n\t\t\t\t\t\tplaceholder={ ' ' + __( 'Suffix' ) }\n\t\t\t\t\t\tvalue={ suffix }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tsetAttributes( { suffix: value } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\ttagName=\"span\"\n\t\t\t\t\t\t__unstableOnSplitAtEnd={ () =>\n\t\t\t\t\t\t\tinsertBlocksAfter(\n\t\t\t\t\t\t\t\tcreateBlock( getDefaultBlockName() )\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</div>\n\t\t</>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -2,7 +2,7 @@ import { createElement, Fragment } from "react";
|
|
|
2
2
|
/**
|
|
3
3
|
* External dependencies
|
|
4
4
|
*/
|
|
5
|
-
import
|
|
5
|
+
import clsx from 'clsx';
|
|
6
6
|
|
|
7
7
|
/**
|
|
8
8
|
* WordPress dependencies
|
|
@@ -58,12 +58,12 @@ function PostTimeToReadEdit({
|
|
|
58
58
|
* Do not translate into your own language.
|
|
59
59
|
*/
|
|
60
60
|
const wordCountType = _x('words', 'Word count type. Do not translate!');
|
|
61
|
-
const minutesToRead = Math.max(1, Math.round(wordCount(content, wordCountType) / AVERAGE_READING_RATE));
|
|
61
|
+
const minutesToRead = Math.max(1, Math.round(wordCount(content || '', wordCountType) / AVERAGE_READING_RATE));
|
|
62
62
|
return sprintf( /* translators: %d is the number of minutes the post will take to read. */
|
|
63
63
|
_n('%d minute', '%d minutes', minutesToRead), minutesToRead);
|
|
64
64
|
}, [contentStructure, blocks]);
|
|
65
65
|
const blockProps = useBlockProps({
|
|
66
|
-
className:
|
|
66
|
+
className: clsx({
|
|
67
67
|
[`has-text-align-${textAlign}`]: textAlign
|
|
68
68
|
})
|
|
69
69
|
});
|